1
0
mirror of https://github.com/OpenTTD/OpenTTD.git synced 2025-08-13 09:39:10 +00:00

Compare commits

...

421 Commits

Author SHA1 Message Date
rubidium
a085c49269 (svn r19692) -Release: 1.0.1-RC2 2010-04-21 19:58:56 +00:00
rubidium
b62a1ad1d5 (svn r19691) [1.0] -Prepare: 1.0.1-RC2 2010-04-21 19:52:20 +00:00
rubidium
706d321f52 (svn r19690) [1.0] -Backport from trunk:
- Fix: Desync when joining the game because of using the wrong variable (r19687)
- Fix: Truncated archives were not detected when using zlib 1.2.3. This also fixes zlib 1.2.4 compatibility, zlib 1.2.5 is bugfree (r19686)
- Fix: Towns with 3x3 and 2x2 road layouts could not expand (r19683)
- Fix: When joining a MP game all clients with company ID > 0 would be shown as if they were a spectator [FS#3775] (r19680)
- Fix: Client status was shown incorrect in the console (r19678)
2010-04-21 19:20:28 +00:00
rubidium
2dee7158d3 (svn r19666) [1.0] -Backport from trunk: many many string updates 2010-04-17 22:39:17 +00:00
rubidium
1f1ad73073 (svn r19665) [1.0] -Backport from trunk:
- Fix: Crash of a dedicated server if the null blitter is overridden and (after a while) there is no company 0 on new year anymore [FS#3749] (r19664) 
- Fix: In rare cases, update of signals could be missed (r19663)
- Fix: Various improvements of command handling, missing error messages (r19658, r19657, r19656, r19655, r19654, r19637, r19633, r19621, r19616, r19605, r19604)
- Fix: Sorting industries by production was broken for NewGRF industries (r19538)
2010-04-17 22:27:49 +00:00
rubidium
9f14d652a9 (svn r19653) [1.0] -Backport from trunk:
- Fix: RandomRange() is used for bigger ranges in many cases, so generally extent it to handle 32 bits (r19652)
- Fix: When a company is sold, move connected clients to spectators [FS#3745] (r19651)
- Fix: A client would not be properly moved when moved while joining, e.g. when entering a company's password. This caused the client to be in the wrong company (according to the rest of the clients) and the client being kicked on the first command [FS#3760] (r19648)
- Fix: Trains loaded above the original IDs did not have a default railtypelabel assigned to them, causing them to be unavailable. Could cause desyncs if the multiplayer game was not started from a savegame [FS#3768] (r19647)
2010-04-17 12:00:59 +00:00
rubidium
4fada121bd (svn r19646) [1.0] -Backport from trunk:
- Change: Log the _date and _date_fract in the desync log for saved games (r19638)
- Fix: Do not allow building cacti outside of the desert or rain forest trees outside of the rain forest area. This to prevent people from thinking planting rain forest trees makes the rain forest bigger and thus adds more place to build a lumber mill [FS#3728] (r19644, r19635, r19634)
- Fix: Industry generation failed for large maps and lots of industry types (r19643)
- Fix: Desync when taking over companies (r19636)
- Fix: Chat message caused glitch when rejoining a network game [FS#3757] (r19629)
2010-04-16 22:02:33 +00:00
rubidium
7c3487501c (svn r19624) [1.0] -Backport from trunk:
- Fix: Possible invalid read when server moves client to spectators before he finishes joining [FS#3755] (r19613)
- Fix: Improve joining behaviour; kicking clients when entering passwords that was just cleared, 'connection lost' for people failing the password (r19610, r19609, r19608, r19607, r19606)
2010-04-13 21:40:24 +00:00
rubidium
ba8422354b (svn r19623) [1.0] -Backport from trunk:
- Fix: Company related graphs were not updated correctly after changing the company colour [FS#3763] (r19615)
- Fix: Crash when opening a savegame with a waypoint from around 0.4.0 [FS#3756] (r19612)
- Fix: Presence of online content was not properly updated after download due to duplicate slashes in the path (r19600)
- Fix: [NewGRF] Setting industry prop 0x24 to 0 caused empty station names (r19590)
2010-04-13 21:32:29 +00:00
rubidium
9ed75d3ab7 (svn r19622) [1.0] -Backport from trunk:
- Fix: Desync when a command is received and in the queue while a client starts joining, i.e. save the game state. This can happen in two ways: with frame_freq > 1 a command received in a previous frame might not be executed yet or when a command is received in the same frame as the join but before the savegame is made. In both cases the joining client would not get all commands to get in-sync with the server (and the other clients) (r19620)
- Fix: [desync debug] Minor fixes; "join" pause could cause a crash as some command data was not properly initialised, state was logged multiple times (r19619, r19617, r19602)
2010-04-13 19:30:51 +00:00
rubidium
83cca3a75a (svn r19603) [1.0] -Backport from trunk:
- Fix: Desync debugging; false positives in the cache validity checks and saving/loading the command stream (r19601, r19600, r19596, r19593, r19592, r19589, r19587, r19586)
2010-04-11 10:57:21 +00:00
rubidium
d197bcae1c (svn r19585) [1.0] -Backport from trunk:
- Feature: [NewGRF] Support for extended text code 0x9A 11, print qword (r19570)
- Change: Sync Debian packaging updates from Debian, but keep building a single package (r19572)
- Fix: Crash when pressing 'h' (non-stop) in the order window of a ship or aircraft [FS#3744] (r19584)
- Fix: Graphs were not properly updated when going toggling keys (i.e. companies) (r19574)
- Fix: The timetable button was not automatically raised [FS#3739] (r19571)
- Fix: [NewGRF] Possible buffer underflow in NewGRF string code (r19569)
2010-04-08 15:40:46 +00:00
rubidium
bb74ec40ea (svn r19567) [1.0] -Backport from trunk:
- Feature: Give more detailed error message when trying to build a too long bridge (r19561)
- Fix: [NewGRF] Do not return a random colour for unowned industries in var 45; TTDPatch does not seem to set the colour data in that case either and it could lead to desyncs (r19566)
- Fix: Window::OnResize() was not always called while resizing a window causing incorrect windows [FS#3730] (r19563, r19558)
- Fix: Bridge build error message should not show the same message twice (r19560, r19559)
- Fix: Missed conversion to checking temporary data broke rail type setting upon changing traction type (r19557)
- Fix: Incorrect speed limit reported for rail depots with original acceleration model (r19556)
2010-04-05 21:34:47 +00:00
rubidium
8840831852 (svn r19555) [1.0] -Backport from trunk:
- Fix: Remove same_industry_close setting did not do what it said and caused NewGRF trouble (r19499)
2010-04-03 20:19:26 +00:00
rubidium
fcff99da75 (svn r19554) [1.0] -Backport from trunk:
- Fix: Improperly scaled cargo payment graph when having lots of cargo (r19550, 19543)
- Fix: [NewGRF] Properties set before property 08 (house, industry, industry tiles) should be ignored, not trigger the NewGRF to be disabled [FS#3725] (r19547)
- Fix: Vehicle details window did not resize correctly after refitting a road vehicle to a longer variant [FS#3720] (r19533)
2010-04-03 20:09:19 +00:00
rubidium
a9163d0503 (svn r19552) [1.0] -Backport from trunk:
- Fix: Prevent drawing industries disabled at the smallmap as land tiles when they are built on water (r19523)
- Fix: Tunnels, bridges and roadstops are build with only one roadtype (r19506)
- Fix: [NewGRF] During NewGRF loading, store rail type labels in temporary data and process after loading has finished. This avoids deactivated rail vehicles being reactivated if the climate property is set after the rail type property (r19502)
- Fix: Keep number padding intact when cloning vehicle names [FS#3710] (r19498)
2010-04-03 19:57:23 +00:00
rubidium
3106bb110e (svn r19551) [1.0] -Backport from trunk:
- Feature: Add rail speed limit to land area information window (r19434)
- Fix: [NewGRF] Bytes and words get sign-extended for temporary/persistent storage (r19497)
- Fix: Stop reducing the size of the vehicle list after selecting a vehicle with a long description (r19480)
- Fix: Implement custom sound effect for helicopter take-off [FS#3668] (r19364)
- Update: Plural type of Slovak (r19452)
2010-04-03 19:48:01 +00:00
rubidium
6837650080 (svn r19529) [1.0] -Backport from trunk:
- Fix: Network clients would crash while connecting to a server with AIs (r19526)
- Fix: [NPF] Crash when finding a waypoint before finding the closest depot [FS#3703] (r19460)
2010-03-31 22:05:20 +00:00
rubidium
286575a6c3 (svn r19446) [1.0] -Backport from trunk:
- Fix: Mark industry windows dirty more often [FS#3701] (r19443)
- Update: Readme about openmsx and make it easier to find the pulseaudio-ubuntu-slowness bug in the readme/known-bugs (r19442)
- Language updates
2010-03-17 22:21:03 +00:00
rubidium
9931557d89 (svn r19439) [1.0] -Backport from trunk:
- Fix: Custom group names are misaligned with default ones when using rtl languages [FS#3700] (r19438)
- Fix: With certain game settings one could clear tiles for free when building long roads (r19436)
- Fix: When loading a savegame created with a house NewGRF without that NewGRF available all houses became tall office blocks (r19435)
- Fix: Limit rail clearance earnings to 3/4s of rail build cost, to avoid money making loophole when rail build cost is less than rail removal earnings (r19433)
- Fix: Crash when the error message 'owned by <town>' was shown [FS#3696] (r19432)
- Feature: Append rail type speed limit (if set) to rail type selection list, and toolbar title (r19431)
2010-03-16 20:54:26 +00:00
rubidium
821fe5c3ba (svn r19430) [1.0] -Backport from trunk:
- Fix: [NoAI] When the title game contains an AIPL block the AI settings where overwritten by those from the title game (r19429)
- Fix: Gracefully handle the case where we cannot open a .tar file (r19427)
- Fix: [YAPP] A train on a bridge/tunnel was not always found when checking for trains on a reserved path (r19425)
- Fix: [NoAI] The AI Debug window did not open if an AI or library fails to compile when loading a savegame [FS#3669] (r19395)
- Change: Make the drive through and cargo list consistency checks only run when 'desync' debugging is enabled (r19403, r19398)
2010-03-15 22:52:39 +00:00
rubidium
c3daa9a9fe (svn r19411) [1.0] -Backport from trunk: language updates 2010-03-13 18:47:58 +00:00
rubidium
7c127b2760 (svn r19393) [1.0] -Backport from trunk:
- Fix: One could not level the whole map anymore at once (r19392)
- Fix: Only show the 'No AIs available' error message when explicitly changing the number of AI opponents [FS3676] (r19389)
- Fix: [NoAI] When reloading a savegame, an AI failing to compile could trigger (trying) to read the not yet loaded information of another AI via the AI Debug window and its "open with the most recently used AI" feature [FS#3666] (r19388)
- Fix: Close all orders windows when switching companies [FS#3671] (r19387)
- Fix: [IPv6] Netmask calculations were wrong if cidr >= 32 [FS#3684] (r19385)
- Fix: Overbuilding bridges, rail stations did not properly update PBS reservation [FS#3680] (r19384, r19383)
2010-03-12 21:12:35 +00:00
rubidium
4aef9b3247 (svn r19376) [1.0] -Backport from trunk:
- Feature: [NewGRF] Smallmap colours for railtypes (r19307)
- Change: Update documentation for console command connect to use ip:port#company parameter format, in line with command line help (r19374)
- Change: [NewGRF] Increase railtype cost range (r19306)
- Fix: [NoAI] List valuator could cause invalid iterators [FS#3665] (r19367)
- Fix: Close error messages about missing ownership when the company closes or is taken over [FS#3663] (r19358, r19357)
[1.0] -Backport string updates from trunk
2010-03-08 22:19:39 +00:00
rubidium
d0583ff075 (svn r19312) [1.0] -Backport from trunk:
- Feature: [YAPF] Consider the railtype imposed speed limit for pathfinding (r19301)
- Change: Increase the default small font size for freetype fonts as 6 point fonts are usually unreadable [FS#3655] (r19308)
- Change: [NewGRF] Railtype cost factor from byte to word value (r19306)
- Fix: Disable sound when a sound error happens instead of crashing [FS#3652] (r19304)
2010-03-03 23:24:37 +00:00
rubidium
aba6a8a229 (svn r19310) [1.0] -Backport from trunk: language updates 2010-03-03 20:39:29 +00:00
rubidium
fa9867879f (svn r19300) [1.0] -Backport from trunk:
- Fix: [NewGRF] Return the TTD airport type in station var 0xF1 (r19299)
- Fix: [NewGRF] Segfault when station vars 0xF2/0xF3 is accessed when there is no truck/bus stop (r19298)
- Fix: [NoAI] Some methods of AIAbstractList left invalid iterators [FS#3566] (r19293)
- Fix: [YAPP] If reversing at path signals was disabled, a train would not reverse when hitting the back of an one-way signal (r19286)
[1.0] -Update: Intro game
2010-03-02 00:38:01 +00:00
rubidium
ccf52c64e9 (svn r19284) [1.0] -Backport from trunk: language updates 2010-02-27 21:05:13 +00:00
rubidium
6a8b04d01e (svn r19278) [1.0] -Backport from trunk:
- Feature: BaNaNaS support for music sets (r19262)
- Fix: [NewGRF] Ensure prices cannot be set to zero. Zero prices break a lot of the internal logic to determine whether something has been done [FS#3646] (r19277)
- Fix: 'Cannot build <industry> here... <industry> in the way' showed the to-be-built industry twice, instead of the to-be-built industry and the industry that's in the way [FS#3618] (r19265)
- Fix: strgen segfaults when trying to lookup the command for a non-existing command (r19264)
2010-02-27 16:41:10 +00:00
rubidium
7ed9361ad9 (svn r19258) [1.0] -Backport from trunk:
- Feature: [NewGRF] Add 2 bits of pseudo-random data for rail types, based on tile location (r19235)
- Fix: Writing (console) output to a file failed on Windows if the date would not be logged [FS#3639] (r19252)
- Fix: [NewGRF] Some GRF error messages did not free the previous error messages, creating a memory leak (r19251)
- Fix: With RTL languages clicking a horizontal scrollbar that could not scroll could cause a crash [FS#3643] (r19250)
- Fix: Start and end tiles were swapped in CMD_REMOVE_LONG_ROAD causing too much road to be removed [FS#3642] (r19249)
- Fix: DOS 'port' did not compile anymore (r19248)
- Fix: The -M command line option did not work (r19233)
2010-02-25 21:18:38 +00:00
rubidium
bfa5e7fef5 (svn r19223) [1.0] -Backport from trunk:
- Feature: Add OpenMSX to the installer (r19220, r19219)
- Feature: [NewGRF] Add CB36 support for aircraft properties 0F and 11 (r19218)
- Feature: Scroll to current order destination when ctrl+clicking the start/stop bar (r19216, r19215)
- Feature: Concept of fallback base sets, i.e. do not automatically load the NoMusic/NoSound sets when there is another set; make NoSound part of base installations (r19214, r19213, r19212, r19211, r19206)
- Feature: Support for genders for cargos, industries, vehicles, stations (r19180, r19179, r19178, r19177)
2010-02-23 23:26:37 +00:00
rubidium
5b188a4933 (svn r19222) [1.0] -Backport from trunk:
- Change: Improve error message with track building when signals are in the way (r19190, r19189)
- Fix: GetDestination() is invalid for nearest-depot orders (r19210)
- Fix: Compilation was broken for gcc 3.3 (r19207)
- Fix: The vehicle info in the autoreplace gui was drawn even when the window was shaded [FS#3634] (r19187)
- Fix: When selecting 'build many industries' in the scenario editor the 'build' button was not enabled [FS#3632] (r19176)
2010-02-23 23:18:41 +00:00
rubidium
eb8263ce50 (svn r19175) [1.0] -Backport from trunk:
- Change: Do not print the absolute path to AI script files in the AI debug window, use the relative path from /ai/ instead (r19166)
- Change: The Debian packaging; bring it in sync with the packaging used at Debian excluding package splitting (r19162)
- Fix: Buoys are no Stations, only BaseStations (r19174)
- Fix: Under some circumstances timidity (via extmidi) would not shut down properly causing all kinds of trouble (e.g. blocked audio output). Try harder to shut down timidity and first shut down the music so shut down order is the inverse of initialisation order (r19168)
- Fix: Industry 0 could be choosen even if not available [FS#3631] (r19167)
- Fix: Vehicle running costs should not be changed in a running game [FS#3629] (r19165)
2010-02-20 21:10:58 +00:00
rubidium
b87549229b (svn r19156) [1.0] -Prepare: for 1.0.0-RC1 2010-02-17 23:00:36 +00:00
rubidium
02afc66664 (svn r19155) [1.0] -Backport from trunk:
- Fix: Invisible depots draw the track, so also draw the overlays (r19154)
- Fix: PBS reservation was drawn incorrectly for depots (r19153)
- Change: Move home directory to a better place in Haiku [FS#3625] (r19151)
- Fix: [v]seprintf should return the number of added characters excluding '\0' on truncation [FS#3627] (r19149, r19148)
2010-02-17 21:29:31 +00:00
rubidium
6c86fa768c (svn r19144) [1.0] -Fix [FS#3569]: under certain circumstances one could crash a competitor's train 2010-02-16 00:09:43 +00:00
rubidium
9a4fd32e87 (svn r19142) [1.0] -Branch: the 1.0 series 2010-02-15 23:59:46 +00:00
rubidium
3626eb340e (svn r19141) -Fix [FS#3619] (r18421): look-ahead for multitile waypoints 'made up' data that shouldn't go into the cache, causing desyncs in MP 2010-02-15 23:55:04 +00:00
alberth
80225cf246 (svn r19140) -Codechange: Move variables closer to their first use. 2010-02-15 19:52:40 +00:00
translators
966f186bf8 (svn r19139) -Update from WebTranslator v3.0:
croatian - 1 changes by VoyagerOne
czech - 12 changes by Hadez
dutch - 2 changes by habell
finnish - 1 changes by jpx_
german - 1 changes by planetmaker
hebrew - 2 changes by dnd_man
hungarian - 1 changes by alyr
lithuanian - 4 changes by BlinK_
norwegian_bokmal - 20 changes by mantaray
norwegian_nynorsk - 195 changes by mantaray
russian - 1 changes by Lone_Wolf
serbian - 1 changes by etran
slovak - 21 changes by keso53
slovenian - 1 changes by ntadej
spanish - 1 changes by Terkhen
2010-02-15 18:45:47 +00:00
alberth
c0933e825a (svn r19138) -Codechange: Rename CheckMultipleIndustryInTown() to FindTownForIndustry(). 2010-02-15 11:04:27 +00:00
alberth
6553f49991 (svn r19137) -Add: Report a more useful error when failing to build a bubble generator. 2010-02-15 10:28:40 +00:00
alberth
bb5261a075 (svn r19136) -Doc: Added Doxygen comments for industry checking procedures. 2010-02-15 09:49:10 +00:00
translators
ef59270375 (svn r19135) -Update from WebTranslator v3.0:
italian - 1 changes by lorenzodv
lithuanian - 2 changes by 
norwegian_bokmal - 1 changes by mantaray
norwegian_nynorsk - 127 changes by mantaray
russian - 1 changes by Lone_Wolf
slovak - 199 changes by keso53
spanish - 1 changes by Terkhen
2010-02-14 18:45:24 +00:00
frosch
30b215a82b (svn r19134) -Fix (r16983, r17219): YAPF debug output was quite broken. 2010-02-14 18:33:57 +00:00
rubidium
d0122644af (svn r19133) -Fix [FS#3621]: [Mac OS X] --enable-desync-debug failed compiling (planetmaker) 2010-02-14 16:52:15 +00:00
alberth
33a96b5ef3 (svn r19132) -Codechange: No need to end a line with ;;. 2010-02-14 16:31:35 +00:00
alberth
ac65c41509 (svn r19131) -Doc: Add doxygen comments to some economy variables and constants. 2010-02-14 15:58:10 +00:00
alberth
7dcc414000 (svn r19130) -Codechange: Use references and inlining in CommandCost. 2010-02-14 15:44:21 +00:00
alberth
8641f08df3 (svn r19129) -Fix [FS#3623] (r19122): Don't draw cargo ratings/acceptance when the window is shaded. 2010-02-14 15:35:44 +00:00
alberth
e8d40d6a19 (svn r19128) -Codechange: CommandCost cost methods return void instead of a copy of *this. 2010-02-14 15:30:08 +00:00
frosch
151babee57 (svn r19127) -Codechange: Add printf-like warnings to more functions. 2010-02-14 13:01:33 +00:00
frosch
d757f81646 (svn r19126) -Codechange: Silence a warning. 2010-02-14 13:01:07 +00:00
frosch
b0496c339f (svn r19125) -Fix (r18809): Compiling with desync-debug failed. 2010-02-13 20:13:34 +00:00
translators
f36fc2c80d (svn r19124) -Update from WebTranslator v3.0:
traditional_chinese - 3 changes by josesun
english_US - 35 changes by agenthh
esperanto - 27 changes by Ailanto
finnish - 1 changes by jpx_
german - 1 changes by planetmaker
hungarian - 51 changes by IPG
icelandic - 55 changes by antonsigur
indonesian - 9 changes by fanioz
lithuanian - 2 changes by 
norwegian_bokmal - 229 changes by mantaray
norwegian_nynorsk - 2 changes by mantaray
portuguese - 9 changes by JayCity
brazilian_portuguese - 14 changes by Tucalipe, leandromoh
russian - 7 changes by 
serbian - 5 changes by etran
slovenian - 1 changes by ntadej
2010-02-13 18:45:51 +00:00
alberth
09327c2e69 (svn r19123) -Fix [FS#3617]: Resize station cargo widget when needed to display all accepted cargo types. 2010-02-13 18:44:03 +00:00
alberth
1737292d07 (svn r19122) -Codechange: Move cargo drawing to StationViewWindow::OnPaint(). 2010-02-13 18:41:31 +00:00
alberth
df920582af (svn r19121) -Codechange: Introduce a variable for the height of the ratings and accepted cargo widgets. 2010-02-13 18:39:00 +00:00
frosch
e7106d8121 (svn r19120) -Fix: [NewGRF] Industry property 0x17 was interpreted incorrectly and in some cases circumvented the density difficulty setting.
-Change: Do not scale the number of industry creations during map creation with the number of available industry types.
-Feature: [NewGRF] Implement special industry flag 0x10000.
2010-02-13 14:06:01 +00:00
rubidium
9c02767a92 (svn r19119) -Fix [FS#3616]: removing towns (in the scenario editor) that had stations/depots refer to them or vehicles were on the town's road could cause a crash 2010-02-13 14:02:36 +00:00
alberth
c1b40ee5e0 (svn r19118) -Fix [FS#3593]: Some buttons in the order gui were raised too soon. 2010-02-13 14:00:45 +00:00
terkhen
ff80df980a (svn r19117) -Fix [FS#3593]: The Non-stop dropdown wasn't enabled for depot and waypoint orders. 2010-02-13 10:33:05 +00:00
rubidium
077c751201 (svn r19116) -Fix [FS#3615]: enabling ccache via environment variables failed to properly detect/set a compiler 2010-02-13 00:20:19 +00:00
rubidium
0c6be84ccf (svn r19115) -Document: --with-ccache and --with-distcc in configure 2010-02-13 00:00:47 +00:00
rubidium
f6dfce6d59 (svn r19114) -Change: [strgen] Modify the outputted format for MSVC builds of strgen so it also shows fatal errors in the 'error list' and it also counts them. (Fatal) errors are marked as warnings so a failing language file is not causing the complete compilation to fail. 2010-02-12 23:47:50 +00:00
rubidium
b1cce3f70f (svn r19113) -Change: [strgen] Remove the partially generated language file if compilation fails. 2010-02-12 23:45:25 +00:00
smatz
66837b1edd (svn r19112) -Fix [FS#3611]: don't crash on broken lng file 2010-02-12 23:39:44 +00:00
rubidium
171dbb7831 (svn r19111) -Fix (r19070): the station view didn't show acceptance anymore 2010-02-12 21:43:58 +00:00
rubidium
c70c16c64e (svn r19110) -Fix (r19107): if GCC 3.2 has the trouble, then don't allow it 2010-02-12 18:45:34 +00:00
translators
e412dfedca (svn r19109) -Update from WebTranslator v3.0:
catalan - 13 changes by arnau
croatian - 1 changes by VoyagerOne
french - 1 changes by glx
lithuanian - 2 changes by 
norwegian_nynorsk - 71 changes by mantaray
polish - 5 changes by silver_777
russian - 15 changes by Lone_Wolf
slovak - 27 changes by keso53
slovenian - 6 changes by ntadej
vietnamese - 39 changes by myquartz, nglekhoi
2010-02-12 18:45:34 +00:00
rubidium
a1c66a956f (svn r19108) -Document: what compilers are known to succeed compiling OpenTTD and which ones have proven to fail compiling OpenTTD 2010-02-12 18:42:40 +00:00
rubidium
ad7a139f49 (svn r19107) -Change: GCC 3.2 seems to be having trouble with some templates too 2010-02-12 18:41:46 +00:00
rubidium
3108101cb2 (svn r19106) -Codechange: change 'const static' -> 'static const' for consistency (1 vs 2900 cases); some GCCs/ICCs are known to warn about the former case, but it's valid C++. 2010-02-12 17:31:40 +00:00
yexo
7d5cfa5884 (svn r19105) -Fix [FS#3614]: not all news data was properly freed when starting a new game 2010-02-12 16:42:29 +00:00
alberth
dd1c72d39a (svn r19104) -Fix (r19039): Stablize main view centering in smallmap. 2010-02-12 13:46:41 +00:00
alberth
47295bb8b9 (svn r19103) -Codechange: Use px/py for pixel coordinates in PixelToTile(), as promised by the documentation. 2010-02-12 12:14:21 +00:00
yexo
d403d82617 (svn r19102) -Codechange; let doxygen parse as much code as possible 2010-02-12 12:11:03 +00:00
alberth
464ad6b951 (svn r19101) -Fix (r19039): Click sound was not played when pressing zoom in/out buttons. 2010-02-12 10:40:29 +00:00
yexo
6c35de1d25 (svn r19100) -Fix: [MSVC] don't stop building language files if building one language file fails 2010-02-12 00:45:44 +00:00
yexo
26005c55e5 (svn r19099) -Doc: two files had the wrong name in the @file comment 2010-02-11 20:52:56 +00:00
translators
826e8a92ef (svn r19098) -Update from WebTranslator v3.0:
arabic_egypt - 101 changes by kasakg
croatian - 7 changes by VoyagerOne
czech - 8 changes by SmatZ
dutch - 2 changes by habell
finnish - 4 changes by jpx_
french - 12 changes by glx
hebrew - 12 changes by dnd_man
hungarian - 15 changes by IPG
indonesian - 2 changes by fanioz
italian - 2 changes by lorenzodv
korean - 2 changes by junho2813
lithuanian - 10 changes by BlinK_
luxembourgish - 2 changes by Phreeze
norwegian_bokmal - 5 changes by mantaray
norwegian_nynorsk - 225 changes by mantaray
portuguese - 1 changes by JayCity
romanian - 2 changes by tonny
serbian - 2 changes by etran
slovak - 99 changes by keso53
spanish - 6 changes by Terkhen
vietnamese - 4 changes by myquartz
2010-02-11 18:46:06 +00:00
rubidium
1217bb9411 (svn r19097) -Fix [FS#3610] (r10444): compilation error in the BeMidi driver (jrepan) 2010-02-11 17:13:57 +00:00
yexo
804a6894c5 (svn r19096) -Fix: segfault when one of the items in the news_display group in the config file has no value 2010-02-11 15:12:08 +00:00
yexo
f709290220 (svn r19095) -Fix: segfault when a baseset has an empty metadata field 2010-02-11 15:08:55 +00:00
yexo
6406b75b8f (svn r19094) -Codechange: don't check for NULL values before calling StrEmpty 2010-02-11 14:58:51 +00:00
smatz
07409e6741 (svn r19093) -Codechange: do not prefix console debug output with 'condbg', [console] is enough 2010-02-10 23:38:43 +00:00
rubidium
036d204f4b (svn r19092) -Fix (r19081): MSVC couldn't quite compile OpenTTD 2010-02-10 22:38:30 +00:00
rubidium
32cdc157ee (svn r19091) -Cleanup: remove some unneeded zeroing 2010-02-10 21:28:26 +00:00
rubidium
7a73a7490d (svn r19090) -Codechange: some comment coding style fixes 2010-02-10 21:06:05 +00:00
rubidium
249acc9e4f (svn r19089) -Codechange: some minor coding style 2010-02-10 20:53:23 +00:00
rubidium
aab7768a3e (svn r19088) -Fix: some typos/spelling errors in the base 'translation' 2010-02-10 20:46:14 +00:00
rubidium
0072503496 (svn r19087) -Codechange: some typos in StringIDs 2010-02-10 20:20:18 +00:00
translators
1aee53ef6c (svn r19086) -Update from WebTranslator v3.0:
traditional_chinese - 4 changes by josesun
dutch - 4 changes by habell
french - 3 changes by glx
german - 2 changes by planetmaker
greek - 4 changes by fumantsu
hebrew - 29 changes by dnd_man
hungarian - 2 changes by alyr
italian - 4 changes by lorenzodv
japanese - 25 changes by PouncingAnt
lithuanian - 34 changes by BlinK_
luxembourgish - 178 changes by Phreeze
romanian - 4 changes by kkmic
slovenian - 2 changes by ntadej
spanish - 2 changes by Terkhen
2010-02-10 18:45:45 +00:00
smatz
8cd83f87df (svn r19085) -Codechange: simplify hooking of console commands 2010-02-10 18:18:08 +00:00
smatz
c5b34444af (svn r19084) -Codechange: minor coding-style fixups 2010-02-10 17:37:47 +00:00
smatz
023fc16894 (svn r19083) -Cleanup: remove support for modifying variables from console 2010-02-10 17:32:39 +00:00
smatz
d8a0278cf2 (svn r19082) -Codechange: make 'developer' a regular setting 2010-02-10 17:01:03 +00:00
rubidium
21bd2722cd (svn r19081) -Codechange: make it possible to disable compilation of the AI+Squirrel 2010-02-10 16:24:05 +00:00
smatz
78ce2858fc (svn r19080) -Cleanup: remove unused _debug_ntp_level and _debug_ms_level 2010-02-10 16:12:54 +00:00
smatz
ac6ff0de9b (svn r19079) -Codechange: use _debug_console_level instead of _stdlib_con_developer 2010-02-10 16:10:05 +00:00
rubidium
2fcab9d54e (svn r19078) -Update: add cases to Hebrew (dnd_man) 2010-02-10 16:04:11 +00:00
smatz
91988f2722 (svn r19077) -Codechange: remove company_pw from console vars 2010-02-10 15:26:47 +00:00
terkhen
2329eacfe8 (svn r19076) -Codechange: Move graph functions to their own header. 2010-02-10 15:24:48 +00:00
smatz
73ed81b1c7 (svn r19075) -Codechange: unhackify NetworkChangeCompanyPassword() 2010-02-10 15:17:27 +00:00
smatz
b91b3ac836 (svn r19074) -Change: when filtering list of settings and console commands, use strstr() instead of strncmp() 2010-02-10 13:52:10 +00:00
rubidium
4cd2ad0a5f (svn r19073) -Fix (r15027): -a is not a command line parameter 2010-02-09 23:52:08 +00:00
rubidium
ab35d95b5a (svn r19072) -Fix [FS#3599]: possible read/write after free when the client triggered the server to close the connection 2010-02-09 23:49:19 +00:00
rubidium
3c9c2f704f (svn r19071) -Codechange: update the other language files for r19070 (sbr) 2010-02-09 21:50:16 +00:00
rubidium
29ce905bc2 (svn r19070) -Fix [FS#3607]: the station coverage text was not RTL language aware (sbr) 2010-02-09 21:48:57 +00:00
glx
8f2f4ddeec (svn r19069) -Fix: typo in known-bugs.txt 2010-02-09 18:47:33 +00:00
translators
169020051c (svn r19068) -Update from WebTranslator v3.0:
finnish - 4 changes by jpx_
french - 4 changes by glx
german - 4 changes by planetmaker
hebrew - 14 changes by dnd_man
hungarian - 4 changes by IPG, Petert, alyr
japanese - 16 changes by PouncingAnt
korean - 4 changes by junho2813
luxembourgish - 59 changes by Phreeze
norwegian_bokmal - 5 changes by mantaray
norwegian_nynorsk - 5 changes by mantaray
portuguese - 1 changes by JayCity
brazilian_portuguese - 49 changes by Tucalipe, leandromoh
russian - 5 changes by Lone_Wolf
serbian - 4 changes by etran
slovenian - 4 changes by ntadej
spanish - 4 changes by Terkhen
vietnamese - 4 changes by nglekhoi
2010-02-09 18:45:53 +00:00
glx
fb207873c5 (svn r19067) -Fix [FS#3604]: remove Bidi control characters from the reordered text 2010-02-09 18:37:19 +00:00
yexo
e582d21981 (svn r19066) -Fix: settings that are part of the "ttdpatch flags" can cause desyncs if they're changed in network games 2010-02-09 16:22:13 +00:00
bf862877a4 (svn r19065) -Fix [FS#3605]: Station offset multiplier was wrong. 2010-02-09 15:43:54 +00:00
terkhen
52312ea17f (svn r19064) -Feature: Allow to select different land colours for the smallmap (reworked by Alberth). 2010-02-08 23:46:35 +00:00
yexo
3c627747d3 (svn r19063) -Codechange: type in constant name (andythenorth) 2010-02-08 23:05:29 +00:00
terkhen
b9f06f3f29 (svn r19062) -Codechange: Move smallmap related functions to their own header. 2010-02-08 21:19:41 +00:00
translators
0267acff62 (svn r19061) -Update from WebTranslator v3.0:
esperanto - 6 changes by Ailanto
galician - 37 changes by Condex
hebrew - 33 changes by dnd_man
luxembourgish - 57 changes by Phreeze
brazilian_portuguese - 53 changes by Tucalipe
2010-02-08 18:45:17 +00:00
1bd72e28f0 (svn r19060) -Codechange: Draw custom depot sprites in GUI. 2010-02-08 16:07:46 +00:00
michi_cc
0bad75d079 (svn r19059) -Fix (r19056): Regenerate MSVC project files. 2010-02-08 01:31:10 +00:00
898e879bd9 (svn r19056) -Add: [NewGRF] Action 3/2/1 (i.e. new graphics) support for rail types. (To be documented...) 2010-02-07 22:22:54 +00:00
translators
01474412fc (svn r19055) -Update from WebTranslator v3.0:
basque - 8 changes by Thadah
danish - 22 changes by beruic
esperanto - 15 changes by Ailanto
hungarian - 1 changes by alyr
japanese - 15 changes by PouncingAnt
polish - 6 changes by xaxa
2010-02-07 18:45:19 +00:00
rubidium
f47f3a4157 (svn r19054) -Fix [FS#3598]: when banning yourself via rcon do not send the 'command response' to the client as the connection has already been terminated 2010-02-07 18:28:09 +00:00
frosch
fb9b833dc4 (svn r19053) -Codechange: Add an enum for the special flags of industry tiles. (based on andythenorth' work) 2010-02-07 12:04:44 +00:00
alberth
76dbdca2f8 (svn r19052) -Codechange: Remove the _smallmap_draw_procs array. 2010-02-07 11:58:35 +00:00
frosch
3c7dff4270 (svn r19051) -Codechange: Variable scope. 2010-02-06 20:50:50 +00:00
frosch
69184fdc79 (svn r19050) -Fix: Don't call callbacks for disabled industrytypes. 2010-02-06 20:41:27 +00:00
frosch
0ab6f60c62 (svn r19049) -Codechange: Deduplicate computing number of initial industries. 2010-02-06 20:19:59 +00:00
alberth
ec436a7615 (svn r19048) -Codechange: Pass the already queried effective tile type to the GetSmallMapPixels routines. 2010-02-06 19:24:51 +00:00
alberth
0e97146d4d (svn r19047) -Codechange: Use GetEffectiveTileType() in all GetSmallMapPixels routines. 2010-02-06 19:22:29 +00:00
alberth
5cd81526d8 (svn r19046) -Codechange: Move retrieval of tile colour data in smallmap. 2010-02-06 19:18:09 +00:00
translators
9734124835 (svn r19045) -Update from WebTranslator v3.0:
danish - 1 changes by beruic
japanese - 38 changes by PouncingAnt
turkish - 77 changes by niw3
ukrainian - 1 changes by Madvin
vietnamese - 154 changes by myquartz
2010-02-06 18:45:17 +00:00
rubidium
78f31c1744 (svn r19044) -Codechange: don't load the 'new game' NewGRFs when you're certain the savegame wouldn't have been saved with them, i.e. don't load the 'new game' NewGRFs for TTO savegames. 2010-02-06 17:26:21 +00:00
alberth
da2722da36 (svn r19043) -Doc: Dcoumenting the GetSmallMapPixels typedef. 2010-02-06 15:10:12 +00:00
alberth
4cf65e6e81 (svn r19042) -Add: Allow mousewheel zooming in smallmap. 2010-02-06 13:22:04 +00:00
alberth
a6e8c747c9 (svn r19041) -Codechange: Improve selection of tile to draw in zoomed-out smallmaps. 2010-02-06 13:19:46 +00:00
alberth
21589daea9 (svn r19040) -Codechange: Introduce inverse function of RemapCoords. 2010-02-06 13:14:40 +00:00
alberth
db6e077c8a (svn r19039) -Feature: Add zoom-out to smallmap. 2010-02-06 13:12:59 +00:00
alberth
05388c953a (svn r19038) -Codechange: Move TileArea methods to their own file. 2010-02-06 12:56:13 +00:00
alberth
21c3dd11bd (svn r19027) -Doc: Document RemapCoords functions. 2010-02-06 09:30:30 +00:00
alberth
3f2c4d744a (svn r19026) -Codechange: Move a constant computation out of the loop. 2010-02-06 09:27:04 +00:00
alberth
32db019d9e (svn r19025) -Codechange: Rename DrawSmallMapStuff() to DrawSmallMapColumn(). 2010-02-06 09:25:02 +00:00
rubidium
8ee4a6e7f2 (svn r19024) -Fix [FS#3577]: mass stopping/starting/autoreplacing gave empty errors when there were no vehicles 2010-02-05 21:51:26 +00:00
rubidium
67234a6a6f (svn r19023) -Fix (r18807): city airport introduction date had become 5 years later 2010-02-05 21:49:56 +00:00
rubidium
64ead0b513 (svn r19022) -Fix (r18770): loading old (0.1-ish) savegames failed 2010-02-05 20:22:01 +00:00
rubidium
a126db6ea4 (svn r19021) -Fix [FS#3570]: don't NULL the pointers when saving the savegame on an error during saving; the savegame is still valid 2010-02-05 20:18:30 +00:00
translators
0c226b44a3 (svn r19020) -Update from WebTranslator v3.0:
basque - 125 changes by Thadah
croatian - 8 changes by UnderwaterHesus
danish - 8 changes by beruic, silentStatic
portuguese - 2 changes by SupSuper
romanian - 6 changes by kkmic
ukrainian - 6 changes by Madvin
vietnamese - 106 changes by myquartz
2010-02-05 18:45:22 +00:00
smatz
d62d0ac489 (svn r19019) -Codechange: use HasExactlyOneBit() and HasAtMostOneBit() instead of CountBits() where possible 2010-02-05 17:05:58 +00:00
rubidium
a80eb0a1c0 (svn r19018) -Change: [Makefile] Make test an alias for regression, distclean an alias for mrproper and update mrproper to really delete all generated files/directories. 2010-02-05 16:20:04 +00:00
rubidium
7c1170668a (svn r19017) -Doc: [NoAI] A parameter wasn't documented 2010-02-05 16:11:23 +00:00
terkhen
9cf602c7c1 (svn r19016) -Fix [FS#3591]: When removing roads, the player was also charged for removing the foundations. 2010-02-05 14:11:25 +00:00
rubidium
5d78e73445 (svn r19015) -Update: Vietnamese language settings 2010-02-05 10:47:07 +00:00
yexo
091d88f514 (svn r19014) -Add: [NoAI] AIOrder::[G|S]etStopLocation to get/set the stop location of trains in a rail station 2010-02-04 23:18:19 +00:00
yexo
d858264ca6 (svn r19012) -Fix (r19003): macos.h is not in video/cocoa/ but in os/macosx/. 2010-02-04 22:17:41 +00:00
rubidium
34fa63b8f5 (svn r19011) -Update: AI changelog 2010-02-04 22:14:11 +00:00
terkhen
9e03eb08a2 (svn r19010) -Codechange: Remove a now unneeded check at CmdBuildRailStation. 2010-02-04 21:09:29 +00:00
translators
afe2fe244d (svn r19009) -Update from WebTranslator v3.0:
basque - 5 changes by Thadah
turkish - 62 changes by niw3
2010-02-04 18:45:09 +00:00
rubidium
d11bb39f43 (svn r19007) -Prepare: 1.0.0-beta4 2010-02-04 17:11:46 +00:00
rubidium
cc8fd6e910 (svn r19006) -Fix (r18970): default rail type determination failed causing 'A'/SHIFT-F4 not to work the first time. As rail types can now be anything the explicit options for the different railtypes have been removed, leaving the most used rail type and first/last available rail types. 2010-02-04 17:08:48 +00:00
rubidium
fbb9b4760a (svn r19005) -Codechange: make animated cursors have a bit set instead of using negative numbers that are passed as uints, then cast again to be compared as ints before being inverted to be actually used. Also fixes a couple of 'integer conversion resulted in truncation' warnings ICC spewed. 2010-02-04 15:42:38 +00:00
rubidium
09730847ec (svn r19004) -Codechange: silence ICC warning that 'integer conversion resulted in a change of sign' 2010-02-04 15:27:25 +00:00
rubidium
e62b122bb1 (svn r19003) -Fix [FS#3194]: [OSX] OS X 10.5+ does not (always?) handle 8bpp graphics in a suitable manner. This is actually not a fix but a nasty work around; you can still easily trigger the bug/issue by overriding the 'default' blitter choice (Brad Oliver). I can/have not test(ed) (including compiling) this fix.
Bjarni once suggested that 8bpp works for him on 10.5, so apparantly not all 10.5+ does not handle 8bpp graphics. Nevertheless, it seemed that for some systems the already existing 'does this support 8bpp' did not work, i.e. the OS API seemed to suggest that 8bpp worked when it actually did not. So, I don't know what is going on precisely here but it's definitely not nice to suggest that it supports 8bpp when it doesn't. So just ditch 8bpp support for anything that we suspect might not support 8bpp...
2010-02-04 14:32:12 +00:00
rubidium
36298c1454 (svn r19002) -Fix [FS#1140]: [OSX] Problems with scrolling touchpad (Peter Thorson). I can/have not test(ed) it, it cannot break non OSX builds. 2010-02-04 14:21:20 +00:00
rubidium
228da0ccd3 (svn r19001) -Fix: some GCC compile warnings 2010-02-04 13:35:20 +00:00
smatz
2b8f7f2078 (svn r19000) -Cleanup: remove redundant check 2010-02-04 00:40:11 +00:00
rubidium
68b908a27c (svn r18999) -Change: update some of the defaults (Eddi) 2010-02-03 23:45:19 +00:00
rubidium
9f49882de7 (svn r18998) -Update: the credits 2010-02-03 23:08:46 +00:00
rubidium
3075b3d1ca (svn r18997) -Fix [FS#3588] (r18608): off-by-one in the music playlist (Cirdan) 2010-02-03 22:07:03 +00:00
rubidium
d818c7c7b1 (svn r18996) -Fix (r18993, r18994): MSVC 64 bits had somethings to complain about 2010-02-03 21:45:48 +00:00
translators
a61cd5ad85 (svn r18995) -Update from WebTranslator v3.0:
greek - 8 changes by fumantsu
hebrew - 17 changes by dnd_man
russian - 6 changes by Lone_Wolf
2010-02-03 18:45:12 +00:00
rubidium
2db44fc18e (svn r18994) -Change: content mirroring support (based on work by TrueBrain). 2010-02-03 18:42:23 +00:00
rubidium
c75f19f40b (svn r18993) -Codechange: allow allocating multiple items in a SmallVector with one call. 2010-02-03 17:25:56 +00:00
rubidium
e437362c7b (svn r18992) -Codechange: move the file opening/closing out of the content download function 2010-02-03 17:15:35 +00:00
rubidium
589aee0cee (svn r18991) -Codechange: simplify memory management of DownloadSelectedContent 2010-02-03 17:12:19 +00:00
f1458df1ca (svn r18990) -Codechange: [NewGRF] Add rail type map bounds checking to RailType[Change|Reserve]Info(). 2010-02-03 08:02:07 +00:00
9950fc1ede (svn r18989) -Codechange: [NewGRF] Initialise rail type map with default rail types. 2010-02-03 07:58:43 +00:00
yexo
39c1de23d6 (svn r18988) -Fix: [NewGRF] industry var A5 (=high 8 bits of var A4) returned the high 8 bits of var A2. Same problem for 9B/9A/98 2010-02-02 23:11:10 +00:00
terkhen
2798fdf082 (svn r18987) -Fix: [NoAI] Make building long rails fail for AIs if there is an obstacle in the way. 2010-02-02 22:27:03 +00:00
terkhen
b02a522038 (svn r18986) -Fix (r18803): Make building long roads fail for AIs if there is an obstacle in the way. 2010-02-02 21:25:01 +00:00
translators
8d4773be94 (svn r18985) -Update from WebTranslator v3.0:
basque - 1 changes by Thadah
hebrew - 33 changes by dnd_man
lithuanian - 1 changes by BlinK_
swedish - 8 changes by Chrill
vietnamese - 4 changes by nglekhoi
welsh - 3 changes by Rufus
2010-02-02 18:45:20 +00:00
terkhen
8849943da5 (svn r18984) -Add: Viewport place methods for dragging a line with limited size. 2010-02-01 23:13:15 +00:00
translators
615324130b (svn r18983) -Update from WebTranslator v3.0:
traditional_chinese - 11 changes by josesun
dutch - 3 changes by habell
greek - 9 changes by fumantsu
lithuanian - 4 changes by BlinK_
norwegian_bokmal - 2 changes by CyberKenny
norwegian_nynorsk - 2 changes by mantaray
vietnamese - 5 changes by nglekhoi
2010-02-01 18:45:24 +00:00
smatz
340a93819a (svn r18982) -Remove: svnup.sh - no active dev uses it, modifying it causes breakage when it's used to update 2010-02-01 18:44:04 +00:00
smatz
78ffa78ee7 (svn r18981) -Change: show empty query after creating new group (instead of 'Group nnn') 2010-02-01 18:38:28 +00:00
rubidium
06e80d0a1f (svn r18980) -Codechange: preceeding -> preceding (spelling) 2010-02-01 12:43:28 +00:00
matthijs
108b86282f (svn r18979) -Fix: Typo in console save command output. 2010-02-01 12:29:49 +00:00
smatz
d155794605 (svn r18978) -Fix [FS#3584](r14753): possible invalid memory access when merging companies 2010-02-01 00:10:52 +00:00
terkhen
68fc39ea1d (svn r18977) -Doc: Add comments to ViewportDragDropSelectionProcess. 2010-01-31 22:37:20 +00:00
frosch
c23e4e4538 (svn r18976) -Fix: Estimating the cost of removing statues could clear the presence flag in the town. 2010-01-31 20:56:24 +00:00
frosch
5f4f562d53 (svn r18975) -Cleanup: CMD_REMOVE_ROAD is unused. 2010-01-31 20:55:10 +00:00
frosch
cbbe311cea (svn r18974) -Fix [FS#3578]: CMD_BUILD_ROAD missed CMD_AUTO. Also do not access tiles anymore after clearing them; that fails either in test or exec run. 2010-01-31 20:28:36 +00:00
translators
8e6096931a (svn r18973) -Update from WebTranslator v3.0:
catalan - 6 changes by arnau
hebrew - 8 changes by dnd_man
italian - 2 changes by lorenzodv
lithuanian - 12 changes by BlinK_
portuguese - 6 changes by JayCity
2010-01-31 18:45:18 +00:00
2b820780a1 (svn r18972) -Add: [NewGRF] Per-rail type speed limits. 2010-01-31 13:17:29 +00:00
2331ccd589 (svn r18971) -Fix: Train acceleration for original acceleration model wasn't updated if the train's power changed. 2010-01-31 12:56:32 +00:00
990cbe6263 (svn r18970) -Codechange: Increase number of possible rail types to 16. 2010-01-30 21:59:22 +00:00
32ef582c37 (svn r18969) -Add: [NewGRF] NewGRF-settable rail type properties. 2010-01-30 21:49:22 +00:00
translators
84c6616ee0 (svn r18968) -Update from WebTranslator v3.0:
bulgarian - 5 changes by Tvel
czech - 3 changes by ReisRyos
finnish - 2 changes by jpx_
french - 2 changes by glx
german - 2 changes by planetmaker
hungarian - 4 changes by IPG
indonesian - 7 changes by fanioz
italian - 4 changes by lorenzodv
korean - 2 changes by junho2813
lithuanian - 6 changes by BlinK_
serbian - 2 changes by etran
slovenian - 3 changes by ntadej
spanish - 2 changes by Terkhen
vietnamese - 44 changes by myquartz
2010-01-30 18:45:45 +00:00
frosch
f9cebfcfc4 (svn r18967) -Fix (r18966): Never trust your copy&paste skills. 2010-01-30 18:43:14 +00:00
frosch
88019e64e1 (svn r18966) -Codechange: Remove Window::OnDoubleClick() in favour of a parameter for OnClick(). 2010-01-30 18:34:48 +00:00
frosch
2f6fe85f23 (svn r18965) -Fix (r17846): Don't compare horizontal positions with vertical. 2010-01-30 17:42:04 +00:00
frosch
af50e0a4cf (svn r18964) -Change: Highlight the selected action for town authority, and do not duplicate the itemtext to the description. 2010-01-30 16:29:52 +00:00
terkhen
272f2cd93e (svn r18963) -Codechange: Give AccelerationModel a generical name. 2010-01-30 16:27:35 +00:00
alberth
815eede0be (svn r18962) -Fix (r18958, r18961): Code-style, use this explicitly. 2010-01-30 15:29:35 +00:00
alberth
cdc6f5ddc1 (svn r18961) -Codechange: Simplifying and unduplicating code in smallmap. 2010-01-30 13:11:26 +00:00
terkhen
72f4bd818c (svn r18960) -Codechange: Move acceleration-related values to a separated cache. 2010-01-30 10:41:15 +00:00
frosch
9e4a62d1ee (svn r18959) -Feature: [NewGRF] Allow layering of multiple groundsprites in spritelayouts of stations, houses and industrytiles; so hacks with zero-sized bounding boxes are no longer needed and no longer cause trouble. 2010-01-30 10:08:39 +00:00
alberth
5c9cb9648b (svn r18958) -Codechange: Merge smallmap remap functions. 2010-01-30 09:54:58 +00:00
alberth
ab4072ba8d (svn r18957) -Doc: Documenting the scroll_x, scroll_y, and subscroll variables of SmallMapWindow. 2010-01-30 09:32:48 +00:00
yexo
b7fc8b4979 (svn r18956) -Update: NoAI changelog 2010-01-29 23:59:38 +00:00
yexo
15016e3511 (svn r18955) -Feature: [NoAI] introduce GetBuildCost functions in several classes to get easier cost estimations before you start building 2010-01-29 23:56:42 +00:00
smatz
54f958c8e5 (svn r18954) -Fix (r18952): missing 'inline' 2010-01-29 23:54:00 +00:00
yexo
4c4d1e1bf6 (svn r18953) -Feature: [NoAI] allow editing AI settings while an AI is running
Only settings with the AICONFIG_INGAME flag can be editted in this way
2010-01-29 21:38:55 +00:00
yexo
dc714960e3 (svn r18952) -Fix (r18950): loading recent (=newer then title game) savegames failed 2010-01-29 21:06:35 +00:00
translators
b0349704b0 (svn r18951) -Update from WebTranslator v3.0:
czech - 8 changes by ReisRyos
dutch - 6 changes by Yexo
finnish - 4 changes by jpx_
french - 4 changes by glx
german - 4 changes by planetmaker
greek - 7 changes by fumantsu
hungarian - 4 changes by Petert
korean - 4 changes by junho2813
norwegian_bokmal - 4 changes by mantaray
norwegian_nynorsk - 4 changes by mantaray
serbian - 4 changes by etran
slovenian - 4 changes by ntadej
spanish - 4 changes by Terkhen
vietnamese - 24 changes by myquartz
2010-01-29 18:45:45 +00:00
yexo
f381b91de0 (svn r18950) -Fix: make sure the values of settings loaded from a savegame are valid 2010-01-29 18:21:10 +00:00
yexo
f8b0ddd3ec (svn r18949) -Fix (r18942): 'reduced plane crashes' were actually 'more plane crashes' 2010-01-29 17:56:36 +00:00
yexo
ea227aa033 (svn r18948) -Fix: removing a newgrf from the list didn't update the scrollbar 2010-01-29 15:50:56 +00:00
yexo
81882039e3 (svn r18947) -Fix [FS#1510]: after clicking move up/move down in the newgrf/ai the selected item could be out of range 2010-01-29 15:45:53 +00:00
yexo
a668e801e4 (svn r18946) -Fix: it was possible to change AI settings without changing to the custom difficulty level by using the query text window 2010-01-29 01:03:22 +00:00
yexo
a43a23b408 (svn r18945) -Codechange: typo 2010-01-29 00:11:30 +00:00
yexo
fae34ee719 (svn r18944) -Change [FS#3232]: use the highest version of an AI that can load the AI data from a savegame instead of the exact same version 2010-01-29 00:03:31 +00:00
yexo
d75b9f1642 (svn r18943) -Feature [FS#2885]: make it possible to change newgame settings from within a game via the console (use setting_newgame instead of setting) 2010-01-28 23:17:28 +00:00
yexo
fa01b25f74 (svn r18942) -Feature [FS#2678]: add a setting to reduce/disable aircraft crashes 2010-01-28 22:34:14 +00:00
yexo
b689e3d6e4 (svn r18941) -Fix [FS#3575]: remove the loading indicators as soon as a train crashes 2010-01-28 22:06:13 +00:00
yexo
da3ff51759 (svn r18940) -Feature: make the crash position of aircraft a bit random by giving aircraft a chance to crash every tick they're breaking.
Slow aircraft will crash a bit less, fast aircraft might crash a bit more
2010-01-28 21:59:18 +00:00
terkhen
d4376779f8 (svn r18939) -Codechange [FS#3545]: Move train slope steepness to its own function. 2010-01-28 20:54:29 +00:00
frosch
294bc14652 (svn r18938) -Fix: Industrylayout's special water tile check did not properly check for crossing north border of map. Also don't consider MP_VOID tiles as water. 2010-01-28 19:41:45 +00:00
yexo
6be4560528 (svn r18937) -Fix (r15190): TileAddWrap didn't return INVALID_TILE for void tiles at the north border 2010-01-28 19:27:10 +00:00
translators
8ee96d4d45 (svn r18936) -Update from WebTranslator v3.0:
hungarian - 2 changes by IPG
indonesian - 5 changes by fanioz
spanish - 7 changes by yanok
vietnamese - 544 changes by myquartz
2010-01-28 18:45:16 +00:00
rubidium
c1c401b51b (svn r18935) -Fix [FS#3551] (r18764): value of variables 90 and 91 weren't what NARS expects 2010-01-28 18:19:34 +00:00
glx
27491c5586 (svn r18934) -Fix (r18892, r18913): the deadlock should be definitively gone now 2010-01-28 13:49:20 +00:00
08a24fcc31 (svn r18933) -Codechange: Don't constantly redraw a window when moving it unless it actually moves. 2010-01-28 02:31:37 +00:00
07b285c5ca (svn r18932) -Codechange: Don't constantly redraw drop drop list. 2010-01-28 02:30:59 +00:00
frosch
a3168269f9 (svn r18931) -Fix: Disabling autoreplace rules might count invalid engines. 2010-01-27 20:54:05 +00:00
frosch
7b237ee607 (svn r18930) -Fix: [NoAI] Autoreplace is also valid for the default group. 2010-01-27 20:51:11 +00:00
frosch
ec9ac775bf (svn r18929) -Fix [FS#3568]: Preserve some timetable related vehicle flags during autorenew/-replace. 2010-01-27 20:07:29 +00:00
frosch
9a1dddd137 (svn r18928) -Fix (r18304): The date in case of 'early arrival' was misaligned in the timetable GUI. 2010-01-27 19:52:08 +00:00
rubidium
9a4a120b6e (svn r18927) -Change: move Vietnamese out of unfinished 2010-01-27 18:46:53 +00:00
translators
68344778e3 (svn r18926) -Update from WebTranslator v3.0:
romanian - 3 changes by kkmic
ukrainian - 2 changes by Madvin
vietnamese - 738 changes by myquartz
2010-01-27 18:45:13 +00:00
yexo
ea7c90d471 (svn r18925) -Fix (r18924): a waypoint can have a buoy but no rail waypoint tile 2010-01-27 13:06:58 +00:00
yexo
849e676410 (svn r18924) -Fix [NoAI]: AIOrder::GetOrderDestination could return a non-waypoint tile when the waypoint was a multitile waypoint 2010-01-27 12:45:41 +00:00
cd6eac77c3 (svn r18923) -Fix [FS#3565]: Check source stationspec exists before copying layouts. 2010-01-27 10:17:09 +00:00
yexo
4df90cddee (svn r18922) -Doc: add doxygen documentation to all functions in station_map.h 2010-01-26 23:25:28 +00:00
yexo
7f998ce80d (svn r18921) -Codechange: make the preconditions for Get/Set CustomStationSpecIndex a bit more strict 2010-01-26 23:03:47 +00:00
translators
0bc1b736d7 (svn r18920) -Update from WebTranslator v3.0:
afrikaans - 4 changes by Maccie123
dutch - 3 changes by habell
vietnamese - 638 changes by myquartz
2010-01-26 18:45:11 +00:00
glx
918b3aff5e (svn r18919) -Fix (r15371): strcasestr() return should not be const 2010-01-26 14:04:56 +00:00
translators
078e1edabc (svn r18917) -Update from WebTranslator v3.0:
danish - 1 changes by Hatsen
lithuanian - 17 changes by BlinK_, Devastator
malay - 17 changes by toadhall
norwegian_bokmal - 84 changes by mantaray
norwegian_nynorsk - 4 changes by mantaray
polish - 1 changes by xaxa
swedish - 6 changes by tobjork
2010-01-25 18:45:23 +00:00
frosch
f379b0a1d9 (svn r18916) -Fix (r18809): Don't rely on 'time.h' being included via dark roads. 2010-01-25 17:22:06 +00:00
glx
32fa5384d2 (svn r18915) -Fix (r18912): use a macro for empty DrawTileSprites elements (and solve missing braces/initializer warnings) 2010-01-25 15:20:46 +00:00
glx
57718cc5a7 (svn r18913) -Fix (r18892): the deadlock was still possible 2010-01-25 00:43:51 +00:00
yexo
388c713f08 (svn r18912) -Codechange: free up a bunch of airporttile ids by using the tile animation frame 2010-01-24 20:25:28 +00:00
yexo
6ff482f515 (svn r18911) -Fix (r18910): forgot to svn add the new file 2010-01-24 20:21:09 +00:00
yexo
de3c92dd06 (svn r18910) -Codechange: move the enum with airporttile names to table/airporttile_ids.h 2010-01-24 20:17:18 +00:00
translators
3a23e38898 (svn r18909) -Update from WebTranslator v3.0:
hebrew - 5 changes by dnd_man
norwegian_bokmal - 284 changes by mantaray
norwegian_nynorsk - 1 changes by mantaray
portuguese - 1 changes by JayCity
romanian - 2 changes by tonny
russian - 2 changes by Lone_Wolf
slovenian - 89 changes by ntadej
welsh - 2 changes by welshdragon
2010-01-24 18:45:28 +00:00
rubidium
3d0b3818dd (svn r18908) -Fix [FS#3561]: on bankruptcy the company value did include the loan and as such the value at which you bought the company was too low 2010-01-24 11:05:26 +00:00
alberth
b2f9b0ac43 (svn r18907) -Cleanup: Smallmap was the last user of SetPixelIfEmpty(). 2010-01-23 22:37:14 +00:00
alberth
d2fc24d61c (svn r18906) -Codechange: Use start and end column position instead of a mask for drawing a column in the smallmap. 2010-01-23 22:32:30 +00:00
c83d57f228 (svn r18905) -Fix (r18902): Compile error on 64-bit with gcc 2010-01-23 22:25:00 +00:00
michi_cc
a4f50de959 (svn r18904) -Fix: Writing LZO-compressed savegames would produce invalid files and potentially overwrite memory. 2010-01-23 22:23:45 +00:00
rubidium
6ea1eb1463 (svn r18903) -Fix [FS#3562]: file locations for Windows weren't correct for all versions of Windows 2010-01-23 21:19:14 +00:00
rubidium
299d405680 (svn r18902) -Fix [FS#3559]: the default button for the advanced settings didn't work 2010-01-23 19:33:18 +00:00
rubidium
afcce5ed90 (svn r18901) -Change: make the default button work again for the world generation window; previously it worked due to the bug fixed in r18899. Do not add it again for the town custom number because there is no default for that one. 2010-01-23 19:32:56 +00:00
rubidium
37b0a61b42 (svn r18900) -Document: that an empty string for OnQueryTextFinished means 'use default' 2010-01-23 19:30:53 +00:00
rubidium
2b82db72ef (svn r18899) -Fix: the default button was enabled even when the ENABLE_DEFAULT flag wasn't set 2010-01-23 19:30:03 +00:00
translators
4d184e9b16 (svn r18898) -Update from WebTranslator v3.0:
italian - 2 changes by lorenzodv
japanese - 16 changes by PouncingAnt
korean - 1 changes by junho2813
lithuanian - 275 changes by BlinK_
norwegian_bokmal - 7 changes by Zhygometh
spanish - 4 changes by Terkhen
swedish - 91 changes by tobjork
2010-01-23 18:45:23 +00:00
frosch
4034f249db (svn r18897) -Fix: Land area information read the stationspec also for non-rail-stationtiles, which is no longer valid since r18876. 2010-01-23 16:38:09 +00:00
rubidium
9e106dca81 (svn r18896) -Fix [FS#3558]: pressing cancel for the query windows of the world generation window caused the default to be set instead of no changes to the value 2010-01-23 15:53:09 +00:00
00ffde86d2 (svn r18893) -Codechange: Replace grf_load_* with methods of ByteReader. 2010-01-23 13:17:30 +00:00
glx
a554b41452 (svn r18892) -Fix: in some rare case a deadlock could happen when stopping sound driver (windows) 2010-01-23 01:36:49 +00:00
200dc6821f (svn r18891) -Fix: Avoid duplicate path separator when searching for PNG files which prevented tar-lookups. 2010-01-22 23:55:20 +00:00
frosch
3df9caa86a (svn r18890) -Codechange: Unify drawing of foundations for MP_UNMOVABLE. 2010-01-22 22:32:39 +00:00
frosch
bf65eb686e (svn r18889) -Codechange: Use (GroundSprite|SpriteLayout)PaletteTransform() also for drawing of default industries. They are compatible since the bubblegenerator is also randomly recoloured. 2010-01-22 21:52:20 +00:00
frosch
6260d243ee (svn r18888) -Codechange: Rename PALETTE_59[EF] to something more meaningful. 2010-01-22 18:47:29 +00:00
translators
7f09435239 (svn r18887) -Update from WebTranslator v3.0:
bulgarian - 120 changes by Tvel
catalan - 4 changes by arnau
finnish - 2 changes by jpx_
french - 2 changes by glx
german - 2 changes by planetmaker
korean - 1 changes by junho2813
serbian - 3 changes by etran
slovenian - 4 changes by ntadej
spanish - 1 changes by Terkhen
2010-01-22 18:45:31 +00:00
16e621c939 (svn r18886) -Fix (r18884): Spurious casting 2010-01-22 15:34:22 +00:00
bb71c61ee1 (svn r18885) -Fix (r18884): Industry tile layouts weren't completely freed on error. 2010-01-22 14:03:36 +00:00
927f149ff2 (svn r18884) -Fix: [NewGRF] Perform bounds checking for all NewGRF data reads. Explicit length checks (which were not always correct) are no longer needed so these are removed to simplify code. 2010-01-22 13:02:15 +00:00
rubidium
7ec3d9a0c6 (svn r18883) -Codechange: warn in the difficulty and AI configuration window when setting the number of AIs to non-zero when you don't have AIs 2010-01-21 23:19:50 +00:00
rubidium
18446dd599 (svn r18882) -Change: default to zero AIs 2010-01-21 23:19:13 +00:00
rubidium
5ddf56f0e0 (svn r18881) -Codechange: make the AI debug window look nicer when not at its minimum size 2010-01-21 21:08:58 +00:00
yexo
b76a5669f5 (svn r18880) -Fix: aircraft can be send to an hangar when the target airport has one and when it can land, not only when it has a plane terminal 2010-01-21 19:31:25 +00:00
translators
fdfd0ab922 (svn r18879) -Update from WebTranslator v3.0:
portuguese - 2 changes by SupSuper
slovenian - 6 changes by ntadej
spanish - 149 changes by Terkhen
2010-01-21 18:45:13 +00:00
yexo
e80f4f20af (svn r18878) -Fix [NewGRF]: crash when a newgrf used var62 in an industry tile chain when the industry tile was part of an original industry 2010-01-21 18:32:44 +00:00
yexo
d04441e3f7 (svn r18877) -Change: make the default size of the AI debug window bigger so the 'no ai found' message can be read completely without resizing 2010-01-21 17:13:09 +00:00
yexo
18e7ec6b3e (svn r18876) -Codechange: make sure m4 is always 0 for non-railroad station tiles 2010-01-21 13:34:05 +00:00
rubidium
f608ad7baf (svn r18875) -Codechange: remove some unneeded bits from the network protocol and improve the naming of some variables 2010-01-21 11:17:40 +00:00
rubidium
e130e4e9ba (svn r18874) -Codechange: Change enum Sprites { to static const StringID = for each SPR_ entry and similar for cursors and palettes. This avoids the need for a cast in some places and thus provides better type-safety. 2010-01-21 01:46:40 +00:00
rubidium
db33e32b4d (svn r18873) -Codechange: use PaletteID also in the blitter 2010-01-21 01:44:51 +00:00
rubidium
f94c83a387 (svn r18872) -Codechange: introduce PaletteID and use it 2010-01-21 01:38:13 +00:00
rubidium
02edae5454 (svn r18870) -Prepare: 1.0.0-beta3 2010-01-20 23:29:56 +00:00
translators
05129cf138 (svn r18869) -Update from WebTranslator v3.0:
serbian - 2 changes by etran
slovenian - 49 changes by ntadej
2010-01-20 18:45:10 +00:00
frosch
107ad9bfe1 (svn r18868) -Fix [FS#3547](r18776): Wrong comparator. 2010-01-20 17:59:31 +00:00
translators
36bb4e19ae (svn r18867) -Update from WebTranslator v3.0:
croatian - 36 changes by 
greek - 1 changes by fumantsu
spanish - 109 changes by Terkhen
2010-01-19 18:45:13 +00:00
rubidium
4d93b704d9 (svn r18866) -Codechange: remove the CmdFailed(ret)/CmdSucceeded(ret) wrapper functions 2010-01-18 22:57:21 +00:00
rubidium
d8e126d98d (svn r18865) -Doc: update the manpage 2010-01-18 22:19:14 +00:00
rubidium
a8749ffa5b (svn r18864) -Fix [FS#3532]: town noise population settings could not be changed in-game 2010-01-18 21:44:31 +00:00
translators
a203eaf18f (svn r18863) -Update from WebTranslator v3.0:
croatian - 36 changes by 
hebrew - 38 changes by dnd_man
polish - 1 changes by xaxa
spanish - 1 changes by Terkhen
ukrainian - 2 changes by Madvin
2010-01-18 18:45:20 +00:00
rubidium
b1bd106703 (svn r18862) -Fix [FS#3544]: don't pass AI strings through iconv 2010-01-18 15:41:38 +00:00
smatz
a39a446e8f (svn r18861) -Doc: more doxygen documentation in genworld files 2010-01-18 14:58:32 +00:00
yexo
a1f28ec88b (svn r18860) -Codechange: introduce a wrapper to get an hangar tile from a station 2010-01-18 14:32:47 +00:00
smatz
565ad802b1 (svn r18859) -Codechange: rename glwp_modes to GenenerateLandscapeWindowMode 2010-01-18 12:53:01 +00:00
yexo
bcec00fdbd (svn r18858) -Codechange: use IsAirportTile where possible 2010-01-18 12:36:08 +00:00
yexo
ab68f08886 (svn r18857) -Codechange: don't rely on the fact that all airports are rectangular 2010-01-18 12:32:50 +00:00
smatz
84bc831e32 (svn r18856) -Codechange: do not call GetSlopeZInCorner() when there's no fence to draw 2010-01-18 12:09:25 +00:00
smatz
9fc910fbc2 (svn r18855) -Codechange: record compiler name and version in the crash log 2010-01-18 10:11:27 +00:00
rubidium
23a8d2239f (svn r18854) -Codechange [FS#3539]: unconflict acceleration type as 'status' and rail property (Terhken) 2010-01-17 23:03:43 +00:00
smatz
11e3a00a23 (svn r18853) -Codechange: apply coding style to GenWorld's enums, structs and typedefs 2010-01-17 22:59:24 +00:00
rubidium
a271ef214b (svn r18852) -Update: tweak date formatting of Hebrew 2010-01-17 22:56:47 +00:00
smatz
2469752559 (svn r18851) -Codechange: enumify number of steps needed to generate landscape 2010-01-17 21:40:35 +00:00
smatz
3850b5912f (svn r18850) -Fix [FS#3540]: don't allow screen redraw when the landscape contains broken slopes 2010-01-17 20:28:08 +00:00
translators
75395dc8ce (svn r18849) -Update from WebTranslator v3.0:
croatian - 36 changes by 
finnish - 1 changes by jpx_
greek - 1 changes by fumantsu
norwegian_nynorsk - 1 changes by bjelleklang
slovenian - 96 changes by ntadej
2010-01-17 18:45:18 +00:00
rubidium
736c12f6ae (svn r18848) -Fix (r18838): the original accelaration got broken 2010-01-17 16:52:35 +00:00
rubidium
fdf89f9e8e (svn r18847) -Fix [FS#3541] (r18769): configure didn't properly detect libtimidity anymore (hannibal218bc) 2010-01-17 16:39:58 +00:00
frosch
24e0945bc4 (svn r18846) -Codechange: Merge DrawTileSeq into DrawCommonTileSeq. 2010-01-17 15:05:25 +00:00
yexo
830af8ee77 (svn r18845) -Codechange: introduce AirportTileSpec and use it for animation 2010-01-17 14:22:07 +00:00
yexo
f920415752 (svn r18844) -Codechange: add GPL notice to src/table/airport_defaults.h 2010-01-17 12:48:09 +00:00
frosch
ae48ea16f9 (svn r18843) -Codechange: Only NewGRF supplied spritelayouts use SPRITE_MODIFIER_CUSTOM_SPRITE, so no extra tests needed. 2010-01-17 01:22:43 +00:00
frosch
d9d75c83d5 (svn r18842) -Codechange: Rename SPRITE_MODIFIER_USE_OFFSET to SPRITE_MODIFIER_CUSTOM_SPRITE, invert its meaning, and also use it for industry/house layouts instead of IS_CUSTOM_SPRITE(). 2010-01-17 01:01:56 +00:00
frosch
707cf045f8 (svn r18841) -Fix (r16869): Default-waypoint was drawn incorrectly for monorail and maglev in the waypoint picker. 2010-01-17 00:51:18 +00:00
frosch
2e9529aff3 (svn r18840) -Codechange: Use DrawCommonTileSeq[InGUI] for roaddepot drawing. 2010-01-16 22:52:51 +00:00
frosch
381bf04bab (svn r18839) -Codechange: Detriplicate drawing of spritelayouts in the GUI. 2010-01-16 22:44:03 +00:00
rubidium
719fb9803c (svn r18838) -Codechange [FS#3524]: reorganisation of the train acceleration code plus some minor optimisations (Terkhen) 2010-01-16 22:30:04 +00:00
frosch
d27999e446 (svn r18837) -Codechange: Rename DrawStationTileSeq() to DrawCommonTileSeq() and move it to separate file. 2010-01-16 22:25:44 +00:00
rubidium
199091600a (svn r18836) -Codechange: make TrainUpdateSpeed a class function and update some comments (Terkhen) 2010-01-16 22:16:28 +00:00
df06c14f61 (svn r18835) -Fix: Large sounds could still cause an overflow with high sample rates, causing them to be cut off. 2010-01-16 22:15:02 +00:00
rubidium
15adbad2f4 (svn r18834) -Fix [FS#3538]: compilation failed on OpenBSD (matze) 2010-01-16 22:01:33 +00:00
3a5e588f12 (svn r18833) -Cleanup: Const-ness and style 2010-01-16 20:59:58 +00:00
frosch
c07c7a3818 (svn r18832) -Fix: some indentation whitespace. 2010-01-16 20:51:35 +00:00
rubidium
251ffaa000 (svn r18831) -Change [FS#3537]: do not go into the crashlog handler in case loading a savegame misses with missing NewGRFs. This way the load game crash handler gets better visibility and the user is instructed to find the missing NewGRFs before filing a bug report 2010-01-16 19:08:33 +00:00
translators
7e7ec4f250 (svn r18830) -Update from WebTranslator v3.0:
croatian - 36 changes by 
finnish - 2 changes by jpx_
french - 1 changes by glx
german - 1 changes by planetmaker
hungarian - 2 changes by IPG
slovenian - 144 changes by ntadej
2010-01-16 18:45:22 +00:00
711dea210b (svn r18829) -Codechange: Don't free memory from within audio mixer callback handler as it may be required to be real-time safe. 2010-01-16 17:47:26 +00:00
frosch
6101ad8396 (svn r18828) -Fix (r18823): Decrementing uints is different to ints. 2010-01-16 16:44:59 +00:00
alberth
ff11095916 (svn r18827) -Fix: Center main window using smallmap widget edge coordinates. 2010-01-16 15:24:00 +00:00
frosch
6465f02fba (svn r18826) -Codechange: Unifiy return value of (SmallArray|FixedSizeArray)::(Append|AppendC) with other containers. (skidd13) 2010-01-16 14:22:19 +00:00
frosch
84ece021fd (svn r18825) -Codechange: Sometimes code is shorter if you do not use a function for deduplication. (skidd13) 2010-01-16 14:17:03 +00:00
frosch
e6faf06b68 (svn r18824) -Codechange: Turn some public members into protected ones. (skidd13) 2010-01-16 14:12:18 +00:00
frosch
085e9251c5 (svn r18823) -Codechange: Some uints for unsigned ints. (skidd13) 2010-01-16 14:02:22 +00:00
frosch
c7dafb9a26 (svn r18822) -Codechange: Rename YAPF-related container classes and their members to better fit other container classes. (skidd13) 2010-01-16 13:52:24 +00:00
rubidium
21fff6407d (svn r18821) -Codechange: [Allegro] make the frequency and number of samples runtime configurable 2010-01-15 23:47:28 +00:00
rubidium
f74ce1890e (svn r18820) -Codechange: [SDL] make the number of samples runtime configurable and increase the default slightly 2010-01-15 23:45:26 +00:00
rubidium
1a1797ec4d (svn r18819) -Change [FS#3493]: be consistent with airport naming 2010-01-15 22:29:47 +00:00
rubidium
879668811c (svn r18818) -Fix [FS#3526] (r18766): some train acceleration type conversions were missed 2010-01-15 22:21:50 +00:00
yexo
31d1e9c051 (svn r18816) -Fix (r18807): getting the catchment area of oilrigs triggered an assert 2010-01-15 21:00:46 +00:00
yexo
72572a0586 (svn r18815) -Fix (r18813): adding a single newgrf via the newgrf gui added all newgrfs after the selected one too 2010-01-15 20:20:24 +00:00
translators
785b7e3382 (svn r18814) -Update from WebTranslator v3.0:
croatian - 36 changes by 
polish - 5 changes by amateja
romanian - 1 changes by kkmic
spanish - 1 changes by Terkhen
2010-01-15 18:45:15 +00:00
yexo
bd102b78ee (svn r18813) -Codechange: deduplicate copying a newgrf config 2010-01-15 18:28:30 +00:00
rubidium
aaf0b4b46c (svn r18812) -Codechange: make some functions in train.h functions of Train. 2010-01-15 18:23:52 +00:00
rubidium
55d1db5b28 (svn r18811) -Fix (r18803): also swap the parameters for the AI API 2010-01-15 18:22:57 +00:00
glx
aff659b0b7 (svn r18810) -Fix (r18809): broken win32 compilation with SDL 2010-01-15 17:59:09 +00:00
rubidium
82fc28f77f (svn r18809) -Codechange/Cleanup: remove unneeded headers from some files, if a header require a header make it include that header 2010-01-15 16:41:15 +00:00
yexo
f380a7239d (svn r18808) -Cleanup: deplicate by using an existing function 2010-01-15 16:37:19 +00:00
yexo
d669801f1d (svn r18807) -Codechange: introduce AirportSpec and move several non-statemachine-related variables to there 2010-01-15 12:08:08 +00:00
c37d69d161 (svn r18806) -Codechange: Typo in comment 2010-01-15 11:56:31 +00:00
rubidium
ca167791b6 (svn r18805) -Codechange: move airport_movement.h to table/ 2010-01-15 10:55:43 +00:00
rubidium
4ecb3eb33c (svn r18804) -Codechange: guard against binaries claiming to be compatible with a future (stable) release of OpenTTD. 2010-01-14 23:06:41 +00:00
rubidium
c390e8f00e (svn r18803) -Feature [FS#3318]: make building (long) roads work like building rail; build upon the first obstruction instead of failing totally. Patch by Terkhen. 2010-01-14 23:05:07 +00:00
frosch
ed83388faa (svn r18802) -Codechange: Deduplicate drawing-code for depots and stations/waypoints. 2010-01-14 22:56:54 +00:00
rubidium
f89d6bea0e (svn r18801) -Fix: in some cases error messages weren't properly sent to the client before closing the connection. As a result the client would say 'connection lost' when the cause was something completely different. 2010-01-14 21:48:42 +00:00
rubidium
83c8c562bb (svn r18800) -Fix: in some cases with invalid packets one can crash recent trunk and 1.0.0 betas; 0.7.5 and before can't be crashed though. 2010-01-14 21:47:31 +00:00
translators
f42b435d28 (svn r18799) -Update from WebTranslator v3.0:
croatian - 36 changes by 
russian - 2 changes by Lone_Wolf
ukrainian - 3 changes by Madvin
2010-01-14 18:45:13 +00:00
belugas
1335914ec8 (svn r18798) -Codechange: Simplify use of parameter p2 by using the data it is represeting. Based on work by Terkhen 2010-01-14 15:52:26 +00:00
rubidium
66b900215a (svn r18797) -Fix (r18781): building wagons didn't add them to a train 2010-01-13 21:49:15 +00:00
rubidium
7aeccb9bd0 (svn r18796) -Fix [FS#3521]: [SDL] possible deadlock when killing OpenTTD while starting it 2010-01-13 21:34:48 +00:00
translators
f43646cd7d (svn r18795) -Update from WebTranslator v3.0:
croatian - 36 changes by 
dutch - 190 changes by Hirundo
portuguese - 2 changes by JayCity
spanish - 1 changes by Terkhen
2010-01-13 18:45:15 +00:00
rubidium
f9d2ccf8db (svn r18794) -Codechange: add local company and network 'state' to the crash log 2010-01-13 15:03:34 +00:00
translators
2868da2f57 (svn r18793) -Update from WebTranslator v3.0:
croatian - 36 changes by 
dutch - 69 changes by Hirundo
german - 1 changes by planetmaker
russian - 2 changes by Lone_Wolf
2010-01-12 18:45:15 +00:00
rubidium
9c579a5adf (svn r18792) -Fix [FS#3522] (r18709): crash when using the 32bpp blitter with a dedicated server 2010-01-12 18:09:48 +00:00
rubidium
70aad27dcb (svn r18791) -Fix [FS#3504]: when copying an 'image' back into the buffer the 32bpp anim blitter triggered palette check of the whole window instead of only the part the got copied back 2010-01-12 16:38:48 +00:00
c3fffe7496 (svn r18790) -Revert (r18001,r18177,FS#3515): Viewport could still jump under high CPU load. Revert as change caused more problems than it fixed. 2010-01-12 09:54:18 +00:00
rubidium
cb820e3da3 (svn r18789) -Codechange: when we're not in a network game we don't even need to consider undrawing the chat messages 2010-01-12 00:10:38 +00:00
rubidium
351eb4665c (svn r18788) -Codechange: replace macro as without macro it's shorter than with the macro. 2010-01-11 22:46:00 +00:00
rubidium
a535acb549 (svn r18787) -Fix [FS#3516]: crash when getting the tooltip of the industry amount in the world generation window 2010-01-11 20:58:52 +00:00
rubidium
a6ebc1a77e (svn r18786) -Fix [FS#3507]: NoAI's custom implementation of DoCommandP has several flaws (not masking of bits, not resetting town authority updates on checks/estimates, ...). Let it use DoCommandPInternal, DoCommandP without showing error messages and such, instead. 2010-01-11 20:42:07 +00:00
rubidium
2365819312 (svn r18785) -Codechange: rewrite/rework DoCommandP in order to simplify it, reduce duplication and remove gotos. 2010-01-11 20:39:38 +00:00
rubidium
ebe99fd493 (svn r18784) -Codechange: make NetworkSend_Command accept a company instead of using _local_company to pass that information, with the whole mess when you don't want the company to be _local_company. 2010-01-11 20:32:32 +00:00
rubidium
3e5a87a52c (svn r18783) -Codechange: make CheckCompanyHasMoney set an error on the CommandCost it tests when you don't have enough money instead of setting a global variable. 2010-01-11 20:21:56 +00:00
rubidium
6a047d2316 (svn r18782) -Codechange: move the content of callback_table.cpp to network_command.cpp; it's only ever used there. 2010-01-11 20:00:14 +00:00
rubidium
2b97f38cd1 (svn r18781) -Codechange: pass the CommandCost to the callback instead of whether it succeeded or not.
-Fix: AIs did update their last cost incorrectly in network games if the cost of the DC_EXEC phase differed from the ~DC_EXEC phase.
2010-01-11 18:46:09 +00:00
translators
48df0d4e06 (svn r18780) -Update from WebTranslator v3.0:
traditional_chinese - 1 changes by josesun
croatian - 36 changes by 
dutch - 60 changes by Hirundo
french - 1 changes by glx
2010-01-11 18:45:15 +00:00
rubidium
833c6f36f3 (svn r18779) -Codechange: merge the command callbacks of the primary vehicles; they are identical 2010-01-11 18:34:02 +00:00
michi_cc
de878fad31 (svn r18778) -Fix [FS#3483]: [YAPP] Remove a special check for two-sided signals when reserving a path as this causes trains to get stuck in front of them. 2010-01-11 00:02:14 +00:00
rubidium
f51aac3523 (svn r18777) -Codechange: remove some unused parameters from a function 2010-01-10 23:20:11 +00:00
frosch
d5fa74369a (svn r18776) -Codechange: Use SmallVector to collect refit options. 2010-01-10 21:45:32 +00:00
rubidium
3ebec78900 (svn r18775) -Fix (r18769): non-LZO code used LZO defines, also replace #define with static const uint and add some documentation. 2010-01-10 21:20:51 +00:00
frosch
fee0cebc46 (svn r18774) -Change: Consider callback 19 only broken after subcargos 0 to 255 have been used, instead of stopping at 15. 2010-01-10 20:33:10 +00:00
translators
632280e06e (svn r18773) -Update from WebTranslator v3.0:
afrikaans - 6 changes by burgerd
croatian - 36 changes by 
danish - 3 changes by mgarde
dutch - 86 changes by Hirundo
french - 1 changes by glx
italian - 2 changes by lorenzodv
polish - 2 changes by xaxa
spanish - 4 changes by Terkhen
2010-01-10 18:45:27 +00:00
rubidium
aca2daf841 (svn r18772) -Feature-ish: allow user customisable compression levels for the zlib compression 2010-01-10 15:35:13 +00:00
rubidium
188c8ebd5c (svn r18771) -Codechange: minor cleanups in saveload code 2010-01-10 14:57:05 +00:00
rubidium
f5053cee7e (svn r18770) -Fix-ish: don't allow the memory saveload format to be chosen for savegames; it's utterly useless to make a snapshot in memory and then throw that away without doing anything with it. 2010-01-10 14:30:32 +00:00
rubidium
3ca0937c1c (svn r18769) -Codechange: replace MiniLZO with the real library. If you're using MSVC update openttd-useful, otherwise make sure you've got liblzo2 and it's development files installed. 2010-01-10 13:12:34 +00:00
translators
5afce5831d (svn r18768) -Update from WebTranslator v3.0:
croatian - 36 changes by 
czech - 4 changes by ReisRyos
dutch - 61 changes by Hirundo
finnish - 1 changes by jpx_
indonesian - 43 changes by fanioz
malay - 227 changes by toadhall
spanish - 122 changes by Terkhen
2010-01-09 18:45:25 +00:00
rubidium
2f8b49134c (svn r18767) -Fix: min/max income tooltips for the details performance statistics mentioned months whereas it should be quarters. 2010-01-09 18:44:46 +00:00
1382964fa0 (svn r18766) -Codechange: Make train acceleration type (rail/elrail/monorail vs maglev) a rail type property 2010-01-09 15:33:41 +00:00
rubidium
b9052fff9f (svn r18765) -Fix [FS#3499] (r18750): crash when trying to show cargo payments when there are 'holes' in the cargospec array 2010-01-09 14:57:03 +00:00
rubidium
e4af35d316 (svn r18764) -Fix [FS#3422]: split the (un)load ticks counter and signal wait counter; sometimes they might get into eachother's way 2010-01-09 14:43:08 +00:00
rubidium
f65f276d10 (svn r18763) -Feature [FS#3095]: rerandomise AIs on reloading (via the debug window) when they were randomly chosen 2010-01-09 14:41:22 +00:00
yexo
7f6016031e (svn r18762) -Codechange: unduplicate sprite layout drawing between industries and houses 2010-01-08 22:42:00 +00:00
frosch
5b422d0c64 (svn r18761) -Fix [FS#3497]: Spritelayouts do not need an Action 1 if only using default sprites. 2010-01-08 20:42:12 +00:00
frosch
a16edfebd9 (svn r18760) -Fix (rlots)[FS#3500]: Action 9 did not properly detect whether an Action 8 was encountered already. 2010-01-08 19:18:32 +00:00
yexo
da3decba52 (svn r18759) -Fix [NewGRF]: don't segfault when a newgrf contains an action2 and action3 but no action0 2010-01-08 19:14:33 +00:00
rubidium
37e2ea30a8 (svn r18758) -Change: move Malay to the 'finished' languages 2010-01-08 18:47:25 +00:00
translators
b6b34e2643 (svn r18757) -Update from WebTranslator v3.0:
catalan - 1 changes by arnau
simplified_chinese - 69 changes by EraserKing
croatian - 36 changes by 
czech - 11 changes by ReisRyos
danish - 11 changes by beruic
hungarian - 2 changes by IPG
italian - 1 changes by lorenzodv
korean - 1 changes by junho2813
malay - 476 changes by toadhall
portuguese - 1 changes by JayCity
russian - 1 changes by Lone_Wolf
serbian - 1 changes by etran
slovenian - 24 changes by ntadej
spanish - 11 changes by Terkhen
vietnamese - 2 changes by nglekhoi
2010-01-08 18:45:47 +00:00
glx
6179198c65 (svn r18756) -Codechange: direct accesses to png_*_struct members are deprecated 2010-01-08 03:17:12 +00:00
yexo
be3ca424f6 (svn r18755) -Fix [FS#3495] (r14847): CircularTileSearch skipped a few tiles close to the starting tile 2010-01-07 20:56:50 +00:00
translators
be6fb855e8 (svn r18754) -Update from WebTranslator v3.0:
arabic_egypt - 60 changes by kasakg
croatian - 57 changes by UnderwaterHesus
dutch - 1 changes by habell
french - 1 changes by glx
korean - 2 changes by junho2813
malay - 649 changes by Syed, toadhall
brazilian_portuguese - 1 changes by Rubidium
romanian - 1 changes by kkmic
swedish - 1 changes by Landrash
2010-01-07 18:45:31 +00:00
rubidium
aa0b17bd60 (svn r18753) -Fix: Max TE was incorrect in the engine preview 2010-01-07 17:14:08 +00:00
rubidium
cd55161622 (svn r18752) -Codechange: unduplify some code 2010-01-07 16:39:04 +00:00
rubidium
1fc01513e2 (svn r18751) -Codechange: also log the zlib version in the crash log 2010-01-07 16:29:58 +00:00
rubidium
175db8d613 (svn r18750) -Fix [FS#3492]: the cargo payment button states weren't properly set on opening the window 2010-01-07 11:54:01 +00:00
rubidium
882b23d3ee (svn r18749) -Fix [FS#3491]: the AI's name and version in the debug panel weren't properly centered 2010-01-07 11:48:59 +00:00
rubidium
0e404038f2 (svn r18747) -Codechange: add some constness to the AI code 2010-01-07 00:09:27 +00:00
rubidium
1967084bc3 (svn r18746) -Fix [FS#3489]: clear the cached NewGRFs of a server when receiving a reply instead of when requesting the information. With slow/unstable network connections it would look like the NewGRF settings button went randomly missing. 2010-01-06 20:49:24 +00:00
frosch
9c4b5e32fa (svn r18745) -Codechange: Assemble custom station foundations into a single bounding box. 2010-01-06 20:23:06 +00:00
frosch
70f96a3dbf (svn r18744) -Fix [FS#3487-ish]: Do not toggle the sticky- and shading-button twice per mouseclick when clicking fast. 2010-01-06 20:17:46 +00:00
translators
e0bf5da9ed (svn r18743) -Update from WebTranslator v3.0:
afrikaans - 47 changes by burgerd
croatian - 36 changes by 
dutch - 1 changes by habell
finnish - 3 changes by jpx_
malay - 537 changes by Syed, toadhall
polish - 4 changes by vanta
portuguese - 4 changes by JayCity
russian - 1 changes by Lone_Wolf
ukrainian - 1 changes by Madvin
2010-01-06 18:45:30 +00:00
yexo
4257607e2b (svn r18742) -Fix [NewGRF]: house prop 1D was thrashed when a newgrf contains prop 14 after prop 1D 2010-01-06 15:16:14 +00:00
rubidium
3a26658fed (svn r18741) -Fix (r14597, r16460): the 'ownname' of a language isn't the name of the translator, but the name of the language in said language. 2010-01-06 13:35:32 +00:00
yexo
509d533c51 (svn r18739) -Fix (r18719): building trees on snow with rocks underneed caused an assert 2010-01-06 09:08:43 +00:00
yexo
06842771a8 (svn r18738) -Fix (r18719): when a tree died while there was snow the amount of snow on the tile changed 2010-01-05 22:32:47 +00:00
3157dfb675 (svn r18737) -Fix (r12028): Var67 data wasn't swapped properly for orientation. 2010-01-05 22:18:04 +00:00
yexo
75f717cce3 (svn r18736) -Feature [NewGRF]: implement varaction2houses vars 66 ad 67 2010-01-05 21:36:05 +00:00
593 changed files with 34222 additions and 30669 deletions

View File

@@ -89,8 +89,7 @@ FILE_PATTERNS = *.c \
*.cpp \
*.c++ \
*.h \
*.hpp \
table/*.h
*.hpp
RECURSIVE = YES
EXCLUDE =
EXCLUDE_SYMLINKS = NO
@@ -196,8 +195,8 @@ EXPAND_ONLY_PREDEF = YES
SEARCH_INCLUDES = YES
INCLUDE_PATH =
INCLUDE_FILE_PATTERNS =
PREDEFINED =
EXPAND_AS_DEFINED = DEF_COMMAND
PREDEFINED = ENABLE_NETWORK ENABLE_AI WITH_ZLIB WITH_LZO WITH_PNG WITH_FONTCONFIG WITH_FREETYPE WITH_ICU UNICODE _UNICODE
EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = YES
#---------------------------------------------------------------------------
# Configuration::additions related to external references

View File

@@ -129,10 +129,22 @@ mrproper:
done
$(Q)rm -rf objs
$(Q)rm -f Makefile Makefile.am Makefile.bundle
$(Q)rm -f media/openttd.desktop
$(Q)rm -f media/openttd.desktop media/openttd.desktop.install
$(Q)rm -f $(CONFIG_CACHE_SOURCE_LIST) config.cache config.pwd config.log $(CONFIG_CACHE_PWD)
# directories for bundle generation
$(Q)rm -rf $(BUNDLE_DIR)
$(Q)rm -rf $(BUNDLES_DIR)
# output of profiling
$(Q)rm -f $(BIN_DIR)/gmon.out
# output of generating 'API' documentation
$(Q)rm -f $(ROOT_DIR)/openttd.tag
$(Q)rm -rf $(ROOT_DIR)/docs/source
# output of generating AI API documentation
$(Q)rm -f $(SRC_DIR)/ai/api/openttd.tag
$(Q)rm -rf $(ROOT_DIR)/docs/aidocs
# directories created by OpenTTD on regression testing
$(Q)rm -rf $(BIN_DIR)/ai/regression/content_download $(BIN_DIR)/ai/regression/save $(BIN_DIR)/ai/regression/scenario
distclean: mrproper
depend:
@for dir in $(SRC_DIRS); do \
@@ -150,6 +162,7 @@ run-prof: all
regression: all
$(Q)cd !!BIN_DIR!! && sh ai/regression/run.sh
test: regression
%.o:
@for dir in $(SRC_DIRS); do \
@@ -161,4 +174,6 @@ regression: all
$(MAKE) -C $$dir $@; \
done
.PHONY: test distclean mrproper clean
include Makefile.bundle

View File

@@ -88,6 +88,7 @@ clean:
$(Q)rm -f strgen.o string.o table/strings.h $(STRGEN) $(LANGS) $(LANGS:%=$(BIN_DIR)/lang/%) lang/english.* $(ENDIAN_TARGETS)
mrproper: clean
$(Q)rm -rf $(BIN_DIR)/lang
%.lng:
@echo '$(STAGE) No such language: $(@:%.lng=%)'

View File

@@ -58,7 +58,10 @@ RES := $(shell mkdir -p $(BIN_DIR) $(sort $(dir $(OBJS))))
# Make sure endian_target.h is reasable as if it was in the src/ dir
CFLAGS += -I $(SRC_OBJS_DIR) -I $(LANG_OBJS_DIR)
CFLAGS_MAKEDEP += -I $(SRC_OBJS_DIR) -I $(LANG_OBJS_DIR) -I $(SCRIPT_SRC_DIR)
CFLAGS_MAKEDEP += -I $(SRC_OBJS_DIR) -I $(LANG_OBJS_DIR)
ifdef SCRIPT_SRC_DIR
CFLAGS_MAKEDEP += -I $(SCRIPT_SRC_DIR)
endif
ENDIAN_TARGETS := endian_target.h $(ENDIAN_CHECK)

View File

@@ -192,9 +192,9 @@ function Regression::Base()
print(" RandRange(2): " + AIBase.RandRange(2));
print(" RandRange(2): " + AIBase.RandRange(2));
print(" RandRange(2): " + AIBase.RandRange(2));
print(" RandRange(9): " + AIBase.RandRange(9));
print(" RandRange(9): " + AIBase.RandRange(9));
print(" RandRange(9): " + AIBase.RandRange(9));
print(" RandRange(1000000): " + AIBase.RandRange(1000000)); // 32 bit tests
print(" RandRange(1000000): " + AIBase.RandRange(1000000));
print(" RandRange(1000000): " + AIBase.RandRange(1000000));
print(" Chance(1, 2): " + AIBase.Chance(1, 2));
print(" Chance(1, 2): " + AIBase.Chance(1, 2));
print(" Chance(1, 2): " + AIBase.Chance(1, 2));
@@ -504,6 +504,45 @@ function Regression::EngineList()
}
}
function Regression::Prices()
{
print("");
print("--Prices--");
print(" -Rail-");
print(" 0,BT_TRACK: " + AIRail.GetBuildCost(0, AIRail.BT_TRACK));
print(" 0,BT_SIGNAL: " + AIRail.GetBuildCost(0, AIRail.BT_SIGNAL));
print(" 0,BT_DEPOT: " + AIRail.GetBuildCost(0, AIRail.BT_DEPOT));
print(" 0,BT_STATION: " + AIRail.GetBuildCost(0, AIRail.BT_STATION));
print(" 0,BT_WAYPOINT: " + AIRail.GetBuildCost(0, AIRail.BT_WAYPOINT));
print(" 1,BT_TRACK: " + AIRail.GetBuildCost(1, AIRail.BT_TRACK));
print(" 1,BT_SIGNAL: " + AIRail.GetBuildCost(1, AIRail.BT_SIGNAL));
print(" 1,BT_DEPOT: " + AIRail.GetBuildCost(1, AIRail.BT_DEPOT));
print(" 1,BT_STATION: " + AIRail.GetBuildCost(1, AIRail.BT_STATION));
print(" 1,BT_WAYPOINT: " + AIRail.GetBuildCost(1, AIRail.BT_WAYPOINT));
print(" -Road-");
print(" ROADTYPE_ROAD,BT_ROAD: " + AIRoad.GetBuildCost(AIRoad.ROADTYPE_ROAD, AIRoad.BT_ROAD));
print(" ROADTYPE_ROAD,BT_DEPOT: " + AIRoad.GetBuildCost(AIRoad.ROADTYPE_ROAD, AIRoad.BT_DEPOT));
print(" ROADTYPE_ROAD,BT_BUS_STOP: " + AIRoad.GetBuildCost(AIRoad.ROADTYPE_ROAD, AIRoad.BT_BUS_STOP));
print(" ROADTYPE_ROAD,BT_TRUCK_STOP: " + AIRoad.GetBuildCost(AIRoad.ROADTYPE_ROAD, AIRoad.BT_TRUCK_STOP));
print(" ROADTYPE_TRAM,BT_ROAD: " + AIRoad.GetBuildCost(AIRoad.ROADTYPE_TRAM, AIRoad.BT_ROAD));
print(" ROADTYPE_TRAM,BT_DEPOT: " + AIRoad.GetBuildCost(AIRoad.ROADTYPE_TRAM, AIRoad.BT_DEPOT));
print(" ROADTYPE_TRAM,BT_BUS_STOP: " + AIRoad.GetBuildCost(AIRoad.ROADTYPE_TRAM, AIRoad.BT_BUS_STOP));
print(" ROADTYPE_TRAM,BT_TRUCK_STOP: " + AIRoad.GetBuildCost(AIRoad.ROADTYPE_TRAM, AIRoad.BT_TRUCK_STOP));
print(" -Water-");
print(" BT_DOCK: " + AIMarine.GetBuildCost(AIMarine.BT_DOCK));
print(" BT_DEPOT: " + AIMarine.GetBuildCost(AIMarine.BT_DEPOT));
print(" BT_BUOY: " + AIMarine.GetBuildCost(AIMarine.BT_BUOY));
print(" -Tile-");
print(" BT_FOUNDATION: " + AITile.GetBuildCost(AITile.BT_FOUNDATION));
print(" BT_TERRAFORM: " + AITile.GetBuildCost(AITile.BT_TERRAFORM));
print(" BT_BUILD_TREES: " + AITile.GetBuildCost(AITile.BT_BUILD_TREES));
print(" BT_CLEAR_GRASS: " + AITile.GetBuildCost(AITile.BT_CLEAR_GRASS));
print(" BT_CLEAR_ROUGH: " + AITile.GetBuildCost(AITile.BT_CLEAR_ROUGH));
print(" BT_CLEAR_ROCKY: " + AITile.GetBuildCost(AITile.BT_CLEAR_ROCKY));
print(" BT_CLEAR_FIELDS: " + AITile.GetBuildCost(AITile.BT_CLEAR_FIELDS));
print(" BT_CLEAR_HOUSE: " + AITile.GetBuildCost(AITile.BT_CLEAR_HOUSE));
}
function cost_callback(old_path, new_tile, new_direction, self) { if (old_path == null) return 0; return old_path.GetCost() + 1; }
function estimate_callback(tile, direction, goals, self) { return goals[0] - tile; }
function neighbours_callback(path, cur_tile, self) { return [[cur_tile + 1, 1]]; }
@@ -746,6 +785,36 @@ function Regression::List()
list.Clear();
print(" IsEmpty(): " + list.IsEmpty());
for (local i = 0; i < 10; i++) {
list.AddItem(i, 5 + i / 2);
}
local it = list.Begin();
print(" " + it + " => " + list.GetValue(it) + " (" + list.HasNext() + ")");
list.Sort(list.SORT_BY_VALUE, list.SORT_ASCENDING);
it = list.Next();
print(" " + it + " => " + list.GetValue(it) + " (" + list.HasNext() + ")");
it = list.Begin();
print(" " + it + " => " + list.GetValue(it) + " (" + list.HasNext() + ")");
list.SetValue(it + 1, -5);
it = list.Next();
print(" " + it + " => " + list.GetValue(it) + " (" + list.HasNext() + ")");
list.RemoveValue(list.GetValue(it) + 1);
it = list.Next();
print(" " + it + " => " + list.GetValue(it) + " (" + list.HasNext() + ")");
list.RemoveAboveValue(list.GetValue(it));
it = list.Next();
print(" " + it + " => " + list.GetValue(it) + " (" + list.HasNext() + ")");
while (list.HasNext()) {
it = list.Next();
print(" " + it + " => " + list.GetValue(it));
}
}
function Regression::Map()
@@ -881,6 +950,15 @@ function Regression::Order()
print(" UnshareOrders(): " + AIOrder.UnshareOrders(13));
print(" AppendOrder(): " + AIOrder.AppendOrder(12, 33421, AIOrder.AIOF_NONE));
print(" GetStopLocation(): " + AIOrder.GetStopLocation(13, 0));
print(" BuildVehicle(): " + AIVehicle.BuildVehicle(23596, 8));
print(" BuildRailStation(): " + AIRail.BuildRailStation(7958, AIRail.RAILTRACK_NE_SW, 1, 1, AIStation.STATION_NEW));
print(" AppendOrder(): " + AIOrder.AppendOrder(20, 7958, AIOrder.AIOF_NONE));
print(" GetOrderCount(): " + AIOrder.GetOrderCount(20));
print(" GetStopLocation(): " + AIOrder.GetStopLocation(20, 0));
print(" SetStopLocation(): " + AIOrder.SetStopLocation(20, 0, AIOrder.STOPLOCATION_MIDDLE));
print(" GetStopLocation(): " + AIOrder.GetStopLocation(20, 0));
local list = AIStationList_Vehicle(12);
print("");
@@ -949,6 +1027,7 @@ function Regression::RailTypeList()
for (local i = list.Begin(); list.HasNext(); i = list.Next()) {
print(" RailType: " + i);
print(" IsRailTypeAvailable(): " + AIRail.IsRailTypeAvailable(i));
print(" GetMaxSpeed(): " + AIRail.GetMaxSpeed(i));
}
}
@@ -985,6 +1064,7 @@ function Regression::Rail()
print(" " + i + " => " + list.GetValue(i));
}
print(" RemoveDepot(): " + AITile.DemolishTile(33411));
print(" BuildRailDepot(): " + AIRail.BuildRailDepot(23596, 23597));
print(" Station");
print(" BuildRailStation(): " + AIRail.BuildRailStation(0, AIRail.RAILTRACK_NE_SW, 1, 1, AIStation.STATION_NEW));
@@ -1699,6 +1779,7 @@ function Regression::Start()
this.IndustryTypeList();
this.Map();
this.Marine();
this.Prices();
this.Rail();
this.RailTypeList();
this.Road();

View File

@@ -96,10 +96,10 @@
RandRange(1): 0
RandRange(2): 0
RandRange(2): 0
RandRange(2): 1
RandRange(9): 6
RandRange(9): 7
RandRange(9): 4
RandRange(2): 0
RandRange(1000000): 987346
RandRange(1000000): 781750
RandRange(1000000): 191841
Chance(1, 2): true
Chance(1, 2): false
Chance(1, 2): false
@@ -569,6 +569,14 @@
[]:
4000 => 50
IsEmpty(): true
0 => 5 (true)
ERROR: Next() is invalid as Begin() is never called
ERROR: HasNext() is invalid as Begin() is never called
0 => 5 (false)
0 => 5 (true)
2 => 6 (true)
3 => 6 (true)
9 => 0 (false)
--Company--
SetName(): true
@@ -584,7 +592,7 @@
GetBankBalance(): 100000
GetName(): (null : 0x00000000)
GetLoanAmount(): 100000
GetMaxLoanAmount(): 2000000000
GetMaxLoanAmount(): 500000
GetLoanInterval(): 10000
SetLoanAmount(1): false
SetLoanAmount(100): false
@@ -596,8 +604,8 @@
GetBankBalance(): 40000
GetLoanAmount(): 40000
SetLoanAmount(10000): true
GetBankBalance(): 2000000000
GetLoanAmount(): 2000000000
GetBankBalance(): 500000
GetLoanAmount(): 500000
GetCompanyHQ(): -1
BuildCompanyHQ(): true
GetCompanyHQ(): 33151
@@ -681,7 +689,7 @@
GetAirportWidth(9): -1
GetAirportHeight(9): -1
GetAirportCoverageRadius(9): -1
GetBankBalance(): 1999999790
GetBankBalance(): 499790
GetPrice(): 5400
BuildAirport(): true
IsHangarTile(): false
@@ -691,11 +699,11 @@
IsHangarTile(): true
IsAirportTile(): true
GetAirportType(): 0
GetBankBalance(): 1999989890
GetBankBalance(): 489890
RemoveAirport(): true
IsHangarTile(): false
IsAirportTile(): false
GetBankBalance(): 1999989626
GetBankBalance(): 489626
BuildAirport(): true
--Bridge--
@@ -7085,7 +7093,7 @@
IsBuoyTile(): false
IsLockTile(): false
IsCanalTile(): false
GetBankBalance(): 1999980703
GetBankBalance(): 480703
BuildWaterDepot(): true
BuildDock(): true
BuildBuoy(): true
@@ -7098,7 +7106,7 @@
IsBuoyTile(): true
IsLockTile(): true
IsCanalTile(): true
GetBankBalance(): 1999951154
GetBankBalance(): 451154
--AIWaypointList(BUOY)--
Count(): 1
@@ -7117,10 +7125,45 @@
IsBuoyTile(): false
IsLockTile(): false
IsCanalTile(): false
GetBankBalance(): 1999928509
GetBankBalance(): 428509
BuildWaterDepot(): true
BuildDock(): true
--Prices--
-Rail-
0,BT_TRACK: 75
0,BT_SIGNAL: 48
0,BT_DEPOT: 450
0,BT_STATION: 285
0,BT_WAYPOINT: 450
1,BT_TRACK: -1
1,BT_SIGNAL: -1
1,BT_DEPOT: -1
1,BT_STATION: -1
1,BT_WAYPOINT: -1
-Road-
ROADTYPE_ROAD,BT_ROAD: 71
ROADTYPE_ROAD,BT_DEPOT: 375
ROADTYPE_ROAD,BT_BUS_STOP: 150
ROADTYPE_ROAD,BT_TRUCK_STOP: 150
ROADTYPE_TRAM,BT_ROAD: -1
ROADTYPE_TRAM,BT_DEPOT: -1
ROADTYPE_TRAM,BT_BUS_STOP: -1
ROADTYPE_TRAM,BT_TRUCK_STOP: -1
-Water-
BT_DOCK: 262
BT_DEPOT: 525
BT_BUOY: 262
-Tile-
BT_FOUNDATION: 187
BT_TERRAFORM: 187
BT_BUILD_TREES: 15
BT_CLEAR_GRASS: 15
BT_CLEAR_ROUGH: 30
BT_CLEAR_ROCKY: 150
BT_CLEAR_FIELDS: 375
BT_CLEAR_HOUSE: 1200
--Rail--
IsRailTile(): false
BuildRailTrack(): true
@@ -7144,6 +7187,7 @@
Depot distance from (0,0) ListDump:
33411 => 261
RemoveDepot(): true
BuildRailDepot(): true
Station
BuildRailStation(): false
BuildRailStation(): true
@@ -7164,6 +7208,7 @@
ListDump:
RailType: 0
IsRailTypeAvailable(): true
GetMaxSpeed(): 0
--Road--
Road
@@ -8530,6 +8575,14 @@
ShareOrders(): true
UnshareOrders(): true
AppendOrder(): true
GetStopLocation(): -1
BuildVehicle(): 20
BuildRailStation(): true
AppendOrder(): true
GetOrderCount(): 1
GetStopLocation(): 2
SetStopLocation(): true
GetStopLocation(): 1
--StationList_Vehicle--
Count(): 2
@@ -8556,9 +8609,11 @@
4 => 0
--VehicleList_Station--
Count(): 0
Count(): 1
Location ListDump:
20 => 23596
foreach():
20 => 23596
First Subsidy Test
--Subsidy (0) --

49
bin/data/no_sound.obs Normal file
View File

@@ -0,0 +1,49 @@
; $Id$
;
; This represents more or less nothingness
;
[metadata]
name = NoSound
shortname = NULL
version = 2
fallback = true
description = A sound pack without any sounds.
description.af_ZA = 'n Klank stel sonder enige klanke.
description.ar_EG = مجموعة صوت بدوت اصوات مضافة
description.bg_BG = Празен звуков пакет.
description.ca_ES = Un joc de sons sense cap so.
description.cs_CZ = Prázdná sada zvuků.
description.da_DA = En lydpakke uden lyde.
description.de_DE = Basissounds ohne Sound.
description.el_GR = Ένα πάκετο ήχων χώρις ήχους.
description.en_GB = A sound pack without any sounds.
description.en_US = A sound pack without any sounds.
description.es_ES = Un conjunto de sonidos vacío.
description.et_ET = Ilma häälteta helipakk.
description.fi_FI = Äänipaketti ilman ääniä.
description.fr_FR = Un pack de sons sans sons.
description.hr_HR = Zvučni paket bez ikakvih zvukova.
description.hu_HU = Hang alapcsomag hangok nélkül.
description.id_ID = Paket efek suara tanpa berisi suara.
description.it_IT = Un pacchetto sonoro non contenente alcun suono.
description.nb_NO = En lydpakke uten noen lyder.
description.nl_NL = Een geluidset zonder geluid.
description.nn_NO = Ei lydpakke utan nokon lydar.
description.pl_PL = Zestaw dźwięków nie zawierający żadnych dźwięków.
description.pt_PT = Um conjunto de sons vazio.
description.ro_RO = Un set de sunete fără nici un sunet inclus.
description.ru_RU = "Пустой" набор звукового оформления, не содержащий никаких звуков.
description.sk_SK = Zvuková sada neobsahujúca zvuky.
description.sl_SL = Zvočni paket brez zvoka.
description.sr_RS = Prazan skup zvukova.
description.sv_SE = Ett ljudpaket utan några ljud.
description.tr_TR = Ses içermeyen boş bir ses kümesi.
description.zh_TW = 不含任何音效的音效集。
[files]
samples =
[md5s]
[origin]
default = This file was part of your OpenTTD installation.

Binary file not shown.

View File

@@ -4,11 +4,42 @@
; Tycoon Deluxe DOS CD.
;
[metadata]
name = original_dos
shortname = TTDD
version = 1
description = Original Transport Tycoon Deluxe DOS edition graphics
palette = DOS
name = original_dos
shortname = TTDD
version = 1
palette = DOS
description = Original Transport Tycoon Deluxe DOS edition graphics.
description.af_ZA = Oorspronklike Transport Tycoon Deluxe DOS uitgawe grafieke.
description.ar_EG = النسخة الاصلية من ترانسبورت تايكون ديلوكس الرسومية نسخة الدوس
description.bg_BG = Оригинални графики на Transport Tycoon Deluxe за DOS.
description.ca_ES = Gràfics originals de Transport Tycoon Deluxe per a DOS.
description.cs_CZ = Původní sada grafik Transport Tycoon Deluxe (verze pro DOS).
description.da_DA = Originalgrafik fra Transport Tycoon Deluxe DOS-version.
description.de_DE = Original Transport Tycoon Deluxe DOS Basisgrafiken.
description.el_GR = Αρχικά γραφικά από το Transport Tycoon Deluxe έκδοση DOS.
description.en_GB = Original Transport Tycoon Deluxe DOS edition graphics.
description.en_US = Original Transport Tycoon Deluxe DOS edition graphics.
description.es_ES = Gráficos originales de Transport Tycoon Deluxe versión DOS.
description.et_ET = Algse Transport Tycoon Deluxe DOSi versiooni graafika.
description.fi_FI = Alkuperäiset Transport Tycoon Deluxe DOS grafiikat.
description.fr_FR = Graphiques originaux de Transport Tycoon Deluxe (version DOS).
description.hr_HR = Originalna grafika za Transport Tycoon Deluxe DOS izdanje.
description.hu_HU = Az eredeti Transport Tycoon Deluxe DOS verziójának grafikája.
description.id_ID = Grafik orisinil Transport Tycoon Deluxe versi DOS.
description.it_IT = Grafica originale di Transport Tycoon Deluxe, edizione DOS.
description.nb_NO = Original grafikk fra Transport Tycoon Deluxe for DOS.
description.nl_NL = Originele graphics van de Transport Tycoon Deluxe DOS-versie.
description.nn_NO = Original grafikk frå Transport Tycoon Deluxe for DOS.
description.pl_PL = Oryginalna edycja grafik dla Transport Tycoon Deluxe DOS.
description.pt_PT = Gráficos originais da edição DOS de Transport Tycoon Deluxe.
description.ro_RO = Setul grafic original al Transport Tycoon Deluxe pentru DOS.
description.ru_RU = Оригинальная графика из Transport Tycoon Deluxe для DOS.
description.sk_SK = Pôvodná grafika Transport Tycoon Deluxe (DOS).
description.sl_SL = Originalna grafika Transport Tycoon Deluxe za različico DOS.
description.sr_RS = Originalni skup grafika Transport Tycoon Deluxe DOS izdanja.
description.sv_SE = Originalgrafiken från Transport Tycoon Deluxe, DOS-utgåvan.
description.tr_TR = Orijinal Transport Tycoon Deluxe DOS sürümü grafikleri.
description.zh_TW = 原版 Transport Tycoon Deluxe DOS 版的圖形。
[files]
base = TRG1.GRF
@@ -28,4 +59,4 @@ OPENTTDD.GRF = 356cf9663aacb212fdbff609d99090d6
[origin]
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
OPENTTDD.GRF = This file was part of your installation.
OPENTTDD.GRF = This file was part of your OpenTTD installation.

View File

@@ -4,10 +4,41 @@
; Tycoon Deluxe DOS CD.
;
[metadata]
name = original_dos
shortname = TTDO
version = 0
description = Original Transport Tycoon Deluxe DOS edition sounds
name = original_dos
shortname = TTDO
version = 0
description = Original Transport Tycoon Deluxe DOS edition sounds.
description.af_ZA = Oorspronklike Transport Tycoon Deluxe DOS uitgawe klanke.
description.ar_EG = النسخة الاصلية من ترانسبورت تايكون ديلوكس الصوتية نسخة الدوس
description.bg_BG = Оригинални звуци на Transport Tycoon Deluxe за DOS.
description.ca_ES = Sons originals de Transport Tycoon Deluxe per a DOS.
description.cs_CZ = Původní sada zvuků Transport Tycoon Deluxe (verze pro DOS).
description.da_DA = Originallyd fra Transport Tycoon Deluxe DOS-version.
description.de_DE = Original Transport Tycoon Deluxe DOS Basissounds.
description.el_GR = Αρχικοί ήχοι από το Transport Tycoon Deluxe έκδοση DOS.
description.en_GB = Original Transport Tycoon Deluxe DOS edition sounds.
description.en_US = Original Transport Tycoon Deluxe DOS edition sounds.
description.es_ES = Sonidos originales de Transport Tycoon Deluxe versión DOS.
description.et_ET = Algse Transport Tycoon Deluxe DOSi versiooni helid.
description.fi_FI = Alkuperäiset Transport Tycoon Deluxe DOS äänet.
description.hr_HR = Originalni zvukovi za Transport Tycoon Deluxe DOS izdanje.
description.hu_HU = Az eredeti Transport Tycoon Deluxe DOS verziójának hangjai.
description.fr_FR = Sons originaux de Transport Tycoon Deluxe (version DOS).
description.id_ID = Efek suara orisinil Transport Tycoon Deluxe versi DOS.
description.it_IT = Suoni originali di Transport Tycoon Deluxe, edizione DOS.
description.nb_NO = Originale lyder fra Transport Tycoon Deluxe for DOS.
description.nl_NL = Originele geluiden van de Transport Tycoon Deluxe DOS-versie.
description.nn_NO = Originale lydar frå Transport Tycoon Deluxe for DOS.
description.pl_PL = Oryginalna edycja dźwięków dla Transport Tycoon Deluxe DOS.
description.pt_PT = Sons originais da edição DOS de Transport Tycoon Deluxe.
description.ro_RO = Setul de sunete original al Transport Tycoon Deluxe pentru DOS.
description.ru_RU = Оригинальный набор звукового оформления из игры Transport Tycoon Deluxe для DOS.
description.sk_SK = Pôvodné zvuky Transport Tycoon Deluxe (DOS).
description.sl_SL = Originalni zvoki Transport Tycoon Deluxe različice DOS.
description.sr_RS = Originalni skup zvukova Transport Tycoon Deluxe DOS izdanja.
description.sv_SE = Originalljuden från Transport Tycoon Deluxe, DOS-utgåvan.
description.tr_TR = Orijinal Transport Tycoon Deluxe DOS sürümü sesleri.
description.zh_TW = 原版 Transport Tycoon Deluxe DOS 版的音效。
[files]
samples = SAMPLE.CAT

View File

@@ -4,11 +4,42 @@
; Tycoon Deluxe DOS CD. It contains one broken sprite.
;
[metadata]
name = original_dos_de
shortname = TTDD
version = 0
description = Original Transport Tycoon Deluxe DOS (German) edition graphics
palette = DOS
name = original_dos_de
shortname = TTDD
version = 0
palette = DOS
description = Original Transport Tycoon Deluxe DOS (German) edition graphics.
description.af_ZA = Oorspronklike Transport Tycoon Deluxe DOS (German) uitgawe grafieke.
description.ar_EG = النسخة الاصلية من ترانسبورت تايكون ديلوكس الالمانية نسخة الدوس
description.bg_BG = Оригинални графики на Transport Tycoon Deluxe за DOS (немски) .
description.ca_ES = Gràfics originals de Transport Tycoon Deluxe per a DOS (Alemany).
description.cs_CZ = Původní sada grafik Transport Tycoon Deluxe (německá verze pro DOS).
description.da_DA = Originalgrafik fra Transport Tycoon Deluxe DOS (Tysk) version.
description.de_DE = Original Transport Tycoon Deluxe DOS (Deutsch) Basisgrafiken.
description.el_GR = Αρχικά γραφικά από το Transport Tycoon Deluxe έκδοση DOS (Γερμανικό).
description.en_GB = Original Transport Tycoon Deluxe DOS (German) edition graphics.
description.en_US = Original Transport Tycoon Deluxe DOS (German) edition graphics.
description.es_ES = Gráficos originales de Transport Tycoon Deluxe versión DOS (Alemán).
description.et_ET = Algse Transport Tycoon Deluxe DOSi (Saksa) versiooni graafika.
description.fi_FI = Alkuperäiset Transport Tycoon Deluxe DOS (Saksalainen) grafiikat.
description.fr_FR = Graphiques originaux de Transport Tycoon Deluxe (version DOS allemande).
description.hr_HR = Originalna grafika za Transport Tycoon Deluxe DOS (Njemački) izdanje.
description.hu_HU = Az eredeti Transport Tycoon Deluxe DOS (német) verziójának grafikája.
description.id_ID = Grafik orisinil Transport Tycoon Deluxe versi DOS (Jerman).
description.it_IT = Grafica originale di Transport Tycoon Deluxe (tedesco), edizione DOS.
description.nb_NO = Original grafikk fra Transport Tycoon Deluxe for DOS (tysk).
description.nl_NL = Originele graphics van de Duitse Transport Tycoon Deluxe DOS-versie.
description.nn_NO = Original grafikk frå Transport Tycoon Deluxe for DOS (tysk).
description.pl_PL = Oryginalna edycja grafik dla Transport Tycoon Deluxe DOS (German).
description.pt_PT = Gráficos originais da edição DOS (Alemã) de Transport Tycoon Deluxe.
description.ro_RO = Setul grafic original al Transport Tycoon Deluxe pentru DOS (ediţia germană).
description.ru_RU = Оригинальная графика из немецкой версии Transport Tycoon Deluxe для DOS.
description.sk_SK = Pôvodná grafika Transport Tycoon Deluxe (DOS) (v jazyku nemčina).
description.sl_SL = Originalna grafika Transport Tycoon Deluxe za nemško različico DOS.
description.sr_RS = Originalni skup grafika nemačkog Transport Tycoon Deluxe DOS izdanja.
description.sv_SE = Originalgrafiken från Transport Tycoon Deluxe, DOS-utgåvan (tyska).
description.tr_TR = Orijinal Transport Tycoon Deluxe DOS (Almanca) sürümü grafikleri.
description.zh_TW = 原版 Transport Tycoon Deluxe DOS 版 (德國版) 的圖形。
[files]
base = TRG1.GRF
@@ -28,4 +59,4 @@ OPENTTDD.GRF = 356cf9663aacb212fdbff609d99090d6
[origin]
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
OPENTTDD.GRF = This file was part of your installation.
OPENTTDD.GRF = This file was part of your OpenTTD installation.

View File

@@ -4,11 +4,42 @@
; Tycoon Deluxe for Windows CD.
;
[metadata]
name = original_windows
shortname = TTDW
version = 0
description = Original Transport Tycoon Deluxe Windows edition graphics
palette = Windows
name = original_windows
shortname = TTDW
version = 0
palette = Windows
description = Original Transport Tycoon Deluxe Windows edition graphics.
description.af_ZA = Oorspronklike Transport Tycoon Deluxe Windows uitgawe grafieke.
description.ar_EG = النسخة الاصلية من ترانسبورت تايكون ديلوكس الرسومية نسخة وندوز
description.bg_BG = Оригинални графики на Transport Tycoon Deluxe за Windows.
description.ca_ES = Gràfics originals de Transport Tycoon Deluxe per a Windows.
description.cs_CZ = Původní sada grafik Transport Tycoon Deluxe (verze pro Windows).
description.da_DA = Originalgrafik fra Transport Tycoon Deluxe Windows-version.
description.de_DE = Original Transport Tycoon Deluxe Windows Basisgrafiken.
description.el_GR = Αρχικά γραφικά από το Transport Tycoon Deluxe έκδοση Windows.
description.en_GB = Original Transport Tycoon Deluxe Windows edition graphics.
description.en_US = Original Transport Tycoon Deluxe Windows edition graphics.
description.es_ES = Gráficos originales de Transport Tycoon Deluxe versión Windows.
description.et_ET = Algse Transport Tycoon Deluxe Windowsi versiooni graafika.
description.fi_FI = Alkuperäiset Transport Tycoon Deluxe Windows grafiikat.
description.fr_FR = Graphiques originaux de Transport Tycoon Deluxe (version Windows).
description.hr_HR = Originalna grafika za Transport Tycoon Deluxe Windows izdanje.
description.hu_HU = Az eredeti Transport Tycoon Deluxe Windows verziójának grafikája.
description.id_ID = Grafik orisinil Transport Tycoon Deluxe versi Windows.
description.it_IT = Grafica originale di Transport Tycoon Deluxe, edizione Windows.
description.nb_NO = Original grafikk fra Transport Tycoon Deluxe for Windows.
description.nl_NL = Originele graphics van de Transport Tycoon Deluxe Windows-versie.
description.nn_NO = Original grafikk frå Transport Tycoon Deluxe for Windows.
description.pl_PL = Oryginalna edycja grafik dla Transport Tycoon Deluxe Windows.
description.pt_PT = Gráficos originais da edição Windows de Transport Tycoon Deluxe.
description.ro_RO = Setul grafic original al Transport Tycoon Deluxe pentru Windows.
description.ru_RU = Оригинальная графика из Transport Tycoon Deluxe для Windows.
description.sk_SK = Pôvodná grafika Transport Tycoon Deluxe (Windows).
description.sl_SL = Originalna grafika Transport Tycoon Deluxe za različico oken(windows).
description.sr_RS = Originalni skup grafika Transport Tycoon Deluxe Windows izdanja.
description.sv_SE = Originalgrafiken från Transport Tycoon Deluxe, Windows-utgåvan.
description.tr_TR = Orijinal Transport Tycoon Deluxe Windows sürümü grafikleri.
description.zh_TW = 原版 Transport Tycoon Deluxe Windows 版的圖形。
[files]
base = TRG1R.GRF
@@ -28,4 +59,4 @@ OPENTTDW.GRF = 80346ea80de167068cfb975f93963941
[origin]
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
OPENTTDW.GRF = This file was part of your installation.
OPENTTDW.GRF = This file was part of your OpenTTD installation.

View File

@@ -4,10 +4,41 @@
; Tycoon Deluxe for Windows CD.
;
[metadata]
name = original_windows
shortname = TTDO
version = 0
description = Original Transport Tycoon Deluxe Windows edition sounds
name = original_windows
shortname = TTDO
version = 0
description = Original Transport Tycoon Deluxe Windows edition sounds.
description.af_ZA = Oorspronklike Transport Tycoon Deluxe Windows uitgawe klanke.
description.ar_EG = النسخة الاصلية من ترانسبورت تايكون ديلوكس الصوتية نسخة وندوز
description.bg_BG = Оригинални звуци на Transport Tycoon Deluxe за Windows.
description.ca_ES = Sons originals de Transport Tycoon Deluxe per a Windows.
description.cs_CZ = Původní sada zvuků Transport Tycoon Deluxe (verze pro Windows).
description.da_DA = Originallyd fra Transport Tycoon Deluxe Windows-version.
description.de_DE = Original Transport Tycoon Deluxe Windows Basissounds.
description.el_GR = Αρχικοί ήχοι από το Transport Tycoon Deluxe έκδοση Windows.
description.en_GB = Original Transport Tycoon Deluxe Windows edition sounds.
description.en_US = Original Transport Tycoon Deluxe Windows edition sounds.
description.es_ES = Sonidos originales de Transport Tycoon Deluxe versión Windows.
description.et_ET = Algse Transport Tycoon Deluxe Windowsi versiooni helid.
description.fi_FI = Alkuperäiset Transport Tycoon Deluxe Windows äänet.
description.hr_HR = Originalni zvukovi za Transport Tycoon Deluxe Windows izdanje.
description.hu_HU = Az eredeti Transport Tycoon Deluxe Windows verziójának hangjai.
description.fr_FR = Sons originaux de Transport Tycoon Deluxe (version Windows).
description.id_ID = Efek suara orisinil Transport Tycoon Deluxe versi Windows.
description.it_IT = Suoni originali di Transport Tycoon Deluxe, edizione Windows.
description.nb_NO = Originale lyder fra Transport Tycoon Deluxe for Windows.
description.nl_NL = Originele geluiden van de Transport Tycoon Deluxe Windows-versie.
description.nn_NO = Originale lydar frå Transport Tycoon Deluxe for Windows.
description.pl_PL = Oryginalna edycja dźwięków dla Transport Tycoon Deluxe Windows.
description.pt_PT = Sons originais da edição Windows de Transport Tycoon Deluxe.
description.ro_RO = Setul de sunete original al Transport Tycoon Deluxe pentru Windows.
description.ru_RU = Оригинальный набор звукового оформления из игры Transport Tycoon Deluxe для Windows.
description.sk_SK = Pôvodné zvuky Transport Tycoon Deluxe (Windows).
description.sl_SL = Originalni zvoki Transport Tycoon Deluxe različice oken(windows).
description.sr_RS = Originalni skup zvukova Transport Tycoon Deluxe Windows izdanja.
description.sv_SE = Originalljuden från Transport Tycoon Deluxe, Windows-utgåvan.
description.tr_TR = Orijinal Transport Tycoon Deluxe Windows sürümü sesleri.
description.zh_TW = 原版 Transport Tycoon Deluxe Windows 版的音效。
[files]
samples = SAMPLE.CAT

View File

@@ -3,10 +3,42 @@
; This represents more or less nothingness
;
[metadata]
name = NoMusic
shortname = NOMU
version = 0
description = A music pack without actual music
name = NoMusic
shortname = NULL
version = 0
fallback = true
description = A music pack without actual music.
description.af_ZA = 'n Musiek stel sonder enige musiek.
description.ar_EG = مجموعة موسيقى بدون موسيقى
description.bg_BG = Празен музикален пакет.
description.ca_ES = Un joc de música sense cap música.
description.cs_CZ = Prázná hudební sada.
description.da_DA = En musikpakke uden musik.
description.de_DE = Ein Musikset ohne Musik.
description.el_GR = Ένα πάκετο μουσικής χωρίς πραγματική μουσική.
description.en_GB = A music pack without actual music.
description.en_US = A music pack without actual music.
description.es_ES = Un conjunto de música vacío.
description.et_ET = Muusikakomplekt ilma igasuguse muusikata.
description.fi_FI = Musiikkipaketti, jossa ei ole musiikkia.
description.fr_FR = Un pack de musiques sans musiques.
description.hr_HR = Muzički paket bez ikakve muzike.
description.hu_HU = Zenei alapcsomag zene nélkül.
description.id_ID = Paket musik tanpa berisi musik.
description.it_IT = Un pacchetto musicale non contenente alcuna musica.
description.nb_NO = En musikkpakke uten noe musikk.
description.nl_NL = Een muziekset zonder muziek.
description.nn_NO = Ei musikkpakke utan noko musikk.
description.pl_PL = Zestaw utworów muzycznych nie zawierający żadnej muzyki.
description.pt_PT = Um conjunto de música vazio.
description.ro_RO = Un set de muzică fără muzică inclusă.
description.ru_RU = "Пустой" набор музыкального оформления, не содержащий никакой музыки.
description.sk_SK = Sada hudby neobsahujúca hudbu.
description.sl_SL = Glasbeni paket z vključeno glasbo.
description.sr_RS = Prazan skup muzičkih numera.
description.sv_SE = Ett musikpaket utan någon musik.
description.tr_TR = Müzik içermeyen boş bir müzik paketi.
description.zh_TW = 不含任何音樂的音樂集。
[files]
theme =
@@ -46,3 +78,4 @@ ezy_9 =
[names]
[origin]
default = This file was part of your OpenTTD installation.

View File

@@ -4,10 +4,41 @@
; Tycoon Deluxe for Windows CD.
;
[metadata]
name = original_windows
shortname = TTDW
version = 1
description = Original Transport Tycoon Deluxe Windows edition music
name = original_windows
shortname = TTDW
version = 1
description = Original Transport Tycoon Deluxe Windows edition music.
description.af_ZA = Oorspronklike Transport Tycoon Deluxe Windows uitgawe musiek.
description.ar_EG = النسخة الاصلية من ترانسبورت تايكون ديلوكس الموسيقية نسخة وندوز
description.bg_BG = Оригинална музика на Transport Tycoon Deluxe за Windows.
description.ca_ES = Música Original de Transport Tycoon Deluxe per a Windows.
description.cs_CZ = Původní hudba Transport Tycoon Deluxe (verze pro Windows).
description.da_DA = Originalmusik fra Transport Tycoon Deluxe Windows-version.
description.de_DE = Original Transport Tycoon Deluxe Windows Musikset.
description.el_GR = Αρχική μουσική από το Transport Tycoon Deluxe έκδοση Windows.
description.en_GB = Original Transport Tycoon Deluxe Windows edition music.
description.en_US = Original Transport Tycoon Deluxe Windows edition music.
description.es_ES = Música original de Transport Tycoon Deluxe versión Windows.
description.et_ET = Algse Transport Tycoon Deluxe Windowsi versiooni muusika.
description.fi_FI = Alkuperäinen Transport Tycoon Deluxe Windows musiikki.
description.fr_FR = Musiques originales de Transport Tycoon Deluxe (version Windows).
description.hr_HR = Originalna muzika za Transport Tycoon Deluxe Windows izdanje.
description.hu_HU = Az eredeti Transport Tycoon Deluxe Windows verziójának zenéje.
description.id_ID = Musik pengiring orisinil Transport Tycoon Deluxe versi Windows.
description.it_IT = Musica originale di Transport Tycoon Deluxe, edizione Windows.
description.nb_NO = Original musikk fra Transport Tycoon Deluxe for Windows.
description.nl_NL = Originele muziek van de Transport Tycoon Deluxe Windows-versie.
description.nn_NO = Original musikk frå Transport Tycoon Deluxe for Windows.
description.pl_PL = Oryginalna edycja utworów muzycznych w Transport Tycoon Deluxe Windows.
description.pt_PT = Música original da edição Windows de Transport Tycoon Deluxe.
description.ro_RO = Setul de muzică original al Transport Tycoon Deluxe pentru Windows.
description.ru_RU = Оригинальный набор музыкального оформления из игры Transport Tycoon Deluxe.
description.sk_SK = Pôvodná hudba z Transport Tycoon Deluxe (Windows).
description.sl_SL = Originalna glasba Transport Tycoon Deluxe različice oken(windows).
description.sr_RS = Originalni skup muzičkih numera Transport Tycoon Deluxe Windows izdanja.
description.sv_SE = Originalmusiken från Transport Tycoon Deluxe, Windows-utgåvan.
description.tr_TR = Orijinal Transport Tycoon Deluxe Windows sürümü müzikleri.
description.zh_TW = 原版 Transport Tycoon Deluxe Windows 版的音樂。
[files]
theme = GM_TT00.GM
@@ -18,7 +49,7 @@ old_3 = GM_TT12.GM
old_4 = GM_TT08.GM
old_5 = GM_TT13.GM
old_6 = GM_TT14.GM
old_7 = GM_TT19.GM
old_7 = GM_TT10.GM
old_8 =
old_9 =
new_0 = GM_TT04.GM
@@ -91,4 +122,4 @@ GM_TT20.GM = Jammit
GM_TT21.GM = Movin' On
[origin]
default = You can find it on your Transport Tycoon Deluxe CD-ROM.
default = You can find it on your Transport Tycoon Deluxe CD-ROM.

View File

@@ -1,3 +1,239 @@
1.0.1-RC2 (2010-04-22)
------------------------------------------------------------------------
- Fix: Desync when joining the game because of using the wrong variable (r19687)
- Fix: Truncated archives were not detected when using zlib 1.2.3. This also fixes zlib 1.2.4 compatibility, zlib 1.2.5 is bugfree (r19686)
- Fix: Towns with 3x3 and 2x2 road layouts could not expand (r19683)
- Fix: When joining a MP game all clients with company ID > 0 would be shown as if they were a spectator [FS#3775] (r19680)
- Fix: Client status was shown incorrect in the console (r19678)
1.0.1-RC1 (2010-04-17)
------------------------------------------------------------------------
- Feature: [NewGRF] Support for extended text code 0x9A 11, print qword (r19570)
- Feature: Give more detailed error message when trying to build a too long bridge (r19561)
- Feature: Add rail speed limit to land area information window (r19556, r19434)
- Add: [NoAI] AIRail::GetMaxSpeed(RailType) to get the speed limit of railtypes (r19591)
- Change: Sync Debian packaging updates from Debian, but keep building a single package (r19572)
- Fix: Crash of a dedicated server if the null blitter is overridden and (after a while) there is no company 0 on new year anymore [FS#3749] (r19664)
- Fix: In rare cases, update of signals could be missed (r19663)
- Fix: Various improvements of command handling, missing error messages (r19658, r19657, r19656, r19655, r19654, r19637, r19633, r19621, r19616, r19605, r19604)
- Fix: Industry generation failed for large maps and lots of industry types (r19652, r19643)
- Fix: When a company is sold, move connected clients to spectators [FS#3745] (r19651)
- Fix: A client would not be properly moved when moved while joining, e.g. when entering a company's password. This caused the client to be in the wrong company (according to the rest of the clients) and the client being kicked on the first command [FS#3760] (r19648)
- Fix: Trains loaded above the original IDs did not have a default railtypelabel assigned to them, causing them to be unavailable. Could cause desyncs if the multiplayer game was not started from a savegame [FS#3768] (r19647)
- Fix: Do not allow building cacti outside of the desert or rain forest trees outside of the rain forest area. This to prevent people from thinking planting rain forest trees makes the rain forest bigger and thus adds more place to build a lumber mill [FS#3728] (r19644, r19635, r19634)
- Fix: Desync when taking over companies (r19636)
- Fix: Chat message caused glitch when rejoining a network game [FS#3757] (r19629)
- Fix: Desync when a command is received and in the queue while a client starts joining, i.e. save the game state. This can happen in two ways: with frame_freq > 1 a command received in a previous frame might not be executed yet or when a command is received in the same frame as the join but before the savegame is made. In both cases the joining client would not get all commands to get in-sync with the server (and the other clients) (r19620)
- Fix: Company related graphs were not updated correctly after changing the company colour [FS#3763] (r19615)
- Fix: Possible invalid read when server moves client to spectators before he finishes joining [FS#3755] (r19613)
- Fix: Crash when opening a savegame with a waypoint from around 0.4.0 [FS#3756] (r19612)
- Fix: Improve joining behaviour; kicking clients when entering passwords that was just cleared, 'connection lost' for people failing the password (r19610, r19609, r19608, r19607, r19606)
- Fix: Desync debugging; false positives in the cache validity checks and saving/loading the command stream (r19619, r19617, r19602, r19601, r19600, r19596, r19593, r19592, r19589, r19587, r19586)
- Fix: Presence of online content was not properly updated after download due to duplicate slashes in the path (r19600)
- Fix: [NewGRF] Setting industry prop 0x24 to 0 caused empty station names (r19590)
- Fix: Crash when pressing 'h' (non-stop) in the order window of a ship or aircraft [FS#3744] (r19584)
- Fix: Graphs were not properly updated when going toggling keys (i.e. companies) (r19574)
- Fix: The timetable button was not automatically raised [FS#3739] (r19571)
- Fix: [NewGRF] Possible buffer underflow in NewGRF string code (r19569)
- Fix: [NewGRF] Do not return a random colour for unowned industries in var 45; TTDPatch does not seem to set the colour data in that case either and it could lead to desyncs (r19566)
- Fix: Window::OnResize() was not always called while resizing a window causing incorrect windows [FS#3730] (r19563, r19558)
- Fix: Bridge build error message should not show the same message twice (r19560, r19559)
- Fix: [NewGRF] During NewGRF loading, store rail type labels in temporary data and process after loading has finished. This avoids deactivated rail vehicles being reactivated if the climate property is set after the rail type property (r19557, r19502)
- Fix: Improperly scaled cargo payment graph when having lots of cargo (r19550, 19543)
- Fix: [NewGRF] Properties set before property 08 (house, industry, industry tiles) should be ignored, not trigger the NewGRF to be disabled [FS#3725] (r19547)
- Fix: Sorting industries by production was broken for NewGRF industries (r19538)
- Fix: Vehicle details window did not resize correctly after refitting a road vehicle to a longer variant [FS#3720] (r19533)
- Fix: Prevent drawing industries disabled at the smallmap as land tiles when they are built on water (r19523)
- Fix: Tunnels, bridges and roadstops are build with only one roadtype (r19506)
- Fix: Remove same_industry_close setting did not do what it said and caused NewGRF trouble (r19499)
- Fix: Keep number padding intact when cloning vehicle names [FS#3710] (r19498)
- Fix: [NewGRF] Bytes and words get sign-extended for temporary/persistent storage (r19497)
- Fix: Stop reducing the size of the vehicle list after selecting a vehicle with a long description (r19480)
- Fix: Implement custom sound effect for helicopter take-off [FS#3668] (r19364)
- Update: Plural type of Slovak (r19452)
1.0.0 (2010-04-01)
------------------------------------------------------------------------
- Fix: Network clients would crash while connecting to a server with AIs (r19526)
- Fix: [NPF] Crash when finding a waypoint before finding the closest depot [FS#3703] (r19460)
1.0.0-RC3 (2010-03-18)
------------------------------------------------------------------------
- Feature: Append rail type speed limit (if set) to rail type selection list, and toolbar title (r19431)
- Feature: [NewGRF] Smallmap colours for railtypes (r19307)
- Change: Make the drive through and cargo list consistency checks only run when 'desync' debugging is enabled (r19403, r19398)
- Change: Update documentation for console command connect to use ip:port#company parameter format, in line with command line help (r19374)
- Change: [NewGRF] Increase railtype cost range (r19306)
- Fix: Mark industry windows dirty more often [FS#3701] (r19443)
- Fix: Custom group names are misaligned with default ones when using rtl languages [FS#3700] (r19438)
- Fix: With certain game settings one could clear tiles for free when building long roads (r19436)
- Fix: When loading a savegame created with a house NewGRF without that NewGRF available all houses became tall office blocks (r19435)
- Fix: Limit rail clearance earnings to 3/4s of rail build cost, to avoid money making loophole when rail build cost is less than rail removal earnings (r19433)
- Fix: Crash when the error message 'owned by <town>' was shown [FS#3696] (r19432)
- Fix: [NoAI] When the title game contains an AIPL block the AI settings where overwritten by those from the title game (r19429)
- Fix: Gracefully handle the case where we cannot open a .tar file (r19427)
- Fix: [YAPP] A train on a bridge/tunnel was not always found when checking for trains on a reserved path (r19425)
- Fix: [NoAI] The AI Debug window did not open if an AI or library fails to compile when loading a savegame [FS#3669] (r19395)
- Fix: One could not level the whole map anymore at once (r19392)
- Fix: Only show the 'No AIs available' error message when explicitly changing the number of AI opponents [FS3676] (r19389)
- Fix: [NoAI] When reloading a savegame, an AI failing to compile could trigger (trying) to read the not yet loaded information of another AI via the AI Debug window and its "open with the most recently used AI" feature [FS#3666] (r19388)
- Fix: Close all orders windows when switching companies [FS#3671] (r19387)
- Fix: [IPv6] Netmask calculations were wrong if cidr >= 32 [FS#3684] (r19385)
- Fix: Overbuilding bridges, rail stations did not properly update PBS reservation [FS#3680] (r19384, r19383)
- Fix: [NoAI] List valuator could cause invalid iterators [FS#3665] (r19367)
- Fix: Close error messages about missing ownership when the company closes or is taken over [FS#3663] (r19358, r19357)
1.0.0-RC2 (2010-03-04)
------------------------------------------------------------------------
- Feature: [YAPF] Consider the railtype imposed speed limit for pathfinding (r19301)
- Feature: BaNaNaS support for music sets (r19262)
- Feature: [NewGRF] Add 2 bits of pseudo-random data for rail types, based on tile location (r19235)
- Feature: [Windows] Add OpenMSX to the installer (r19220, r19219)
- Feature: [NewGRF] Add CB36 support for aircraft properties 0F and 11 (r19218)
- Feature: Scroll to current order destination when ctrl+clicking the start/stop bar (r19216, r19215)
- Feature: Concept of fallback base sets, i.e. do not automatically load the NoMusic/NoSound sets when there is another set; make NoSound part of base installations (r19214, r19213, r19212, r19211, r19206)
- Feature: Support for genders for cargos, industries, vehicles, stations (r19180, r19179, r19178, r19177)
- Change: Increase the default small font size for freetype fonts as 6 point fonts are usually unreadable [FS#3655] (r19308)
- Change: [NewGRF] Railtype cost factor from byte to word value (r19306)
- Change: Improve error message with track building when signals are in the way (r19190, r19189)
- Change: Do not print the absolute path to AI script files in the AI debug window, use the relative path from /ai/ instead (r19166)
- Change: The Debian packaging; bring it in sync with the packaging used at Debian excluding package splitting (r19162)
- Fix: [Windows] Disable sound when a sound error happens instead of crashing [FS#3652] (r19304)
- Fix: [NewGRF] Return the TTD airport type in station var 0xF1 (r19299)
- Fix: [NewGRF] Segfault when station vars 0xF2/0xF3 is accessed when there is no truck/bus stop (r19298)
- Fix: [NoAI] Some methods of AIAbstractList left invalid iterators [FS#3566] (r19293)
- Fix: [YAPP] If reversing at path signals was disabled, a train would not reverse when hitting the back of an one-way signal (r19286)
- Fix: [NewGRF] Ensure prices cannot be set to zero. Zero prices break a lot of the internal logic to determine whether something has been done [FS#3646] (r19277)
- Fix: 'Cannot build <industry> here... <industry> in the way' showed the to-be-built industry twice, instead of the to-be-built industry and the industry that is in the way [FS#3618] (r19265)
- Fix: Writing (console) output to a file failed on Windows if the date would not be logged [FS#3639] (r19252)
- Fix: [NewGRF] Some GRF error messages did not free the previous error messages, creating a memory leak (r19251)
- Fix: With RTL languages clicking a horizontal scrollbar that could not scroll could cause a crash [FS#3643] (r19250)
- Fix: Start and end tiles were swapped in CMD_REMOVE_LONG_ROAD causing too much road to be removed [FS#3642] (r19249)
- Fix: DOS 'port' did not compile anymore (r19248)
- Fix: The -M command line option did not work (r19233)
- Fix: GetDestination() is invalid for nearest-depot orders (r19210)
- Fix: Compilation was broken for gcc 3.3 (r19207)
- Fix: The vehicle info in the autoreplace gui was drawn even when the window was shaded [FS#3634] (r19187)
- Fix: When selecting 'build many industries' in the scenario editor the 'build' button was not enabled [FS#3632] (r19176)
- Fix: Buoys are no Stations, only BaseStations (r19174)
- Fix: Under some circumstances timidity (via extmidi) would not shut down properly causing all kinds of trouble (e.g. blocked audio output). Try harder to shut down timidity and first shut down the music so shut down order is the inverse of initialisation order (r19168)
- Fix: Industry 0 could be choosen even if not available [FS#3631] (r19167)
- Fix: Vehicle running costs should not be changed in a running game [FS#3629] (r19165)
1.0.0-RC1 (2010-02-18)
------------------------------------------------------------------------
- Feature: Allow to select different land colours for the smallmap (r19064)
- Feature: [NewGRF] Action 3/2/1 (i.e. new graphics) support for rail types (r19056)
- Feature: Add zoom-out to smallmap (r19039)
- Add: [NoAI] AIOrder::[G|S]etStopLocation to get/set the stop location of trains in a rail station (r19014)
- Change: Move home directory to a better place in Haiku [FS#3625] (r19151)
- Change: Do not load the 'new game' NewGRFs when you are certain the savegame would not have been saved with them, i.e. do not load the 'new game' NewGRFs for TTO savegames (r19044)
- Fix: Invisible depots draw the track, so also draw the overlays (r19154)
- Fix: [v]seprintf should return the number of added characters excluding '\0' on truncation [FS#3627] (r19149, r19148)
- Fix: [YAPF] Look-ahead for multitile waypoints 'made up' data that should not go into the cache, causing desyncs in MP [FS#3619] (r19141)
- Fix: Report a more useful error when failing to build a bubble generator (r19137)
- Fix: Resize station cargo widget when needed to display all accepted cargo types [FS#3617] (r19123)
- Fix: [NewGRF] Industry property 0x17 was interpreted incorrectly and in some cases circumvented the density difficulty setting (r19120)
- Fix: removing towns (in the scenario editor) that had stations/depots refer to them or vehicles were on the town's road could cause a crash [FS#3616] (r19119)
- Fix: In the order window the Non-stop dropdown was not enabled for depot and waypoint orders and some buttons were raised too soon [FS#3593] (r19118, r19117)
- Fix: Do not crash on broken lng file and prevent it from happening again [FS#3611] (r19113, r19112)
- Fix: Not all news data was properly freed when starting a new game [FS#3614] (r19105)
- Fix: The BeMidi driver was broken [FS#3610] (r19097)
- Fix: Crash when one of the items in the news_display group in the config file has no value (r19096)
- Fix: Crash when a baseset has an empty metadata field (r19095)
- Fix: Possible read/write after free when the client triggered the server to close the connection [FS#3599] (r19072)
- Fix: Remove Bidi control characters from the reordered text so they are not drawn [FS#3604] (r19067)
- Fix: [NewGRF] Settings that are part of the "TTPatch flags" can cause desyncs if they are changed in network games (r19066)
- Fix: When banning yourself via rcon do not send the 'command response' to the client as the connection has already been terminated [FS#3598] (r19054)
- Fix: Mass stopping/starting/autoreplacing gave empty errors when there were no vehicles [FS#3577] (r19024)
- Fix: City airport introduction date had become 5 years later (r19023)
- Fix: Loading old (0.1-ish) savegames failed (r19022)
- Fix: Do not NULL the pointers when saving the savegame on an error during saving; the savegame is still valid, so do not make it invalid [FS#3570] (r19021)
- Fix: When removing roads, the player was also charged for removing the foundations [FS#3591] (r19016)
1.0.0-beta4 (2010-02-04)
------------------------------------------------------------------------
- Feature: Content mirroring support (r18994)
- Feature: Show empty query after creating new group (instead of 'Group nnn') (r18981)
- Feature: [NewGRF] NewGRF-settable rail type properties, increase number of possible rail types, per rail type speed limits (r18970, r18969)
- Feature: [NewGRF] Allow layering of multiple groundsprites in spritelayouts of stations, houses and industrytiles; so hacks with zero-sized bounding boxes are no longer needed and no longer cause trouble (r18959)
- Feature: [NoAI] Introduce GetBuildCost functions in several classes to get easier cost estimations before you start building (r18955)
- Feature: [NoAI] Allow editing AI settings while an AI is running (r18953)
- Feature: Make it possible to change newgame settings from within a game via the console (use setting_newgame instead of setting) [FS#2885] (r18943)
- Feature: Add a setting to reduce/disable aircraft crashes [FS#2678] (r18942)
- Feature: Make the crash position of aircraft a bit random by giving aircraft a chance to crash every tick they are breaking (r18940)
- Change: [NoAI] Use the highest version of an AI that can load the AI data from a savegame instead of the exact same version [FS#3232] (r18944)
- Fix: Off-by-one in the music playlist (song missing) [FS#3588] (r18997)
- Fix: [NewGRF] industry var A5 (=high 8 bits of var A4) returned the high 8 bits of var A2. Same problem for 9B/9A/98 (r18988)
- Fix: [NoAI] Make building long rails fail for AIs if there is an obstacle in the way (r18987)
- Fix: Possible invalid memory access when merging companies [FS#3584] (r18978)
- Fix: Estimating the cost of removing statues could clear the presence flag in the town (r18976)
- Fix: CMD_BUILD_ROAD missed CMD_AUTO. Also do not access tiles anymore after clearing them; that fails either in test or exec run [FS#3578] (r18974)
- Fix: Train acceleration for original acceleration model was not updated if the train's power changed (r18971)
- Fix: Make sure the values of settings loaded from a savegame are valid (r18950)
- Fix: After clicking move up/move down in the NewGRF/AI the selected item could be out of range [FS#1510] (r18948, r18947)
- Fix: It was possible to change AI settings without changing to the custom difficulty level by using the query text window (r18946)
- Fix: Remove the loading indicators as soon as a train crashes [FS#3575] (r18941)
- Fix: [NewGRF] Industrylayout's special water tile check did not properly check for crossing north border of map (r18938)
- Fix: [NewGRF] Value of variables 90 and 91 were not what NARS expects [FS#3551] (r18935)
- Fix: [Windows] In some rare case a deadlock could happen when stopping sound driver (r18934, r18913, r18892)
- Fix: [NoAI] Autoreplace is also valid for the default group (r18930)
- Fix: Preserve some timetable related vehicle flags during autorenew/-replace [FS#3568] (r18929)
- Fix: AIOrder::GetOrderDestination could return a non-waypoint tile when the waypoint was a multitile waypoint [NoAI] (r18924)
- Fix: On bankruptcy the company value did include the loan and as such the value at which you bought the company was too low [FS#3561] (r18908)
- Fix: Writing LZO-compressed savegames would produce invalid files and potentially overwrite memory (r18904)
- Fix: [Windows] File locations for Windows were not documented correctly for all versions of Windows [FS#3562] (r18903)
- Fix: Pressing cancel for the query windows of the world generation window caused the default to be set instead of no changes to the value [FS#3558] (r18896)
- Fix: Avoid duplicate path separator when searching for PNG files which prevented tar-lookups (r18891)
- Fix: [NewGRF] Perform bounds checking for all NewGRF data reads. Explicit length checks (which were not always correct) are no longer needed so these are removed to simplify code (r18884)
- Fix: Aircraft can be send to an hangar when the target airport has one and when it can land, not only when it has a plane terminal (r18880)
- Fix: [NewGRF] Crash when a NewGRF used var62 in an industry tile chain when the industry tile was part of an original industry (r18878)
1.0.0-beta3 (2010-01-21)
------------------------------------------------------------------------
- Feature: Make building (long) roads work like building rail; build upon the first obstruction instead of failing totally [FS#3318] (r18803)
- Feature: Allow user customisable compression levels for the zlib compression (r18772)
- Feature: [NoAI] Rerandomise AIs on reloading (via the debug window) when they were randomly chosen [FS#3095] (r18763)
- Feature: [NewGRF] Implement VarAction2Houses variables 66 and 67 (r18736)
- Change: [SDL/Allegro] Make the number of samples/frequency runtime configurable (r18821, r18820)
- Change: Be consistent with airport naming [FS#3493] (r18819)
- Change: [NewGRF] Consider callback 19 only broken after subcargos 0 to 255 have been used, instead of stopping at 15 (r18774)
- Change: Replace MiniLZO with the real library (r18769)
- Fix: Town noise population settings could not be changed in-game [FS#3532] (r18864)
- Fix: Do not pass AI strings through iconv [FS#3544] (r18862)
- Fix: Do not do screen redraw when the landscape contains broken slopes [FS#3540] (r18850)
- Fix: Default-waypoint was drawn incorrectly for monorail and maglev in the waypoint picker (r18841)
- Fix: In some cases error messages were not properly sent to the client before closing the connection. As a result the client would say 'connection lost' when the cause was something completely different (r18801)
- Fix: In some cases with invalid packets one can crash OpenTTD (r18800)
- Fix: [SDL] Possible deadlock when killing OpenTTD while starting it [FS#3521] (r18796)
- Fix: When copying an 'image' back into the buffer the 32bpp anim blitter triggered palette check of the whole window instead of only the part the got copied back [FS#3504] (r18791)
- Fix: Viewport could jump under high CPU load [FS#3515] (r18790)
- Fix: Crash when getting the tooltip of the industry amount in the world generation window [FS#3516] (r18787)
- Fix: [NoAI] NoAI's custom implementation of DoCommandP has several flaws (not masking of bits, not resetting town authority updates on checks/estimates, ...). Let it use DoCommandPInternal, DoCommandP without showing error messages and such, instead [FS#3507] (r18786)
- Fix: [NoAI] AIs did update their last cost incorrectly in network games if the cost of the DC_EXEC phase differed from the ~DC_EXEC phase (r18781)
- Fix: [YAPP] Remove a special check for two-sided signals when reserving a path as this causes trains to get stuck in front of them [FS#3483] (r18778)
- Fix: Assertions because the unloading and signal wait counter got into eachother's way [FS#3422] (r18764)
- Fix: [NewGRF] Spritelayouts do not need an Action 1 if only using default sprites [FS#3497] (r18761)
- Fix: [NewGRF] Action 9 did not properly detect whether an Action 8 was encountered already [FS#3500] (r18760)
- Fix: [NewGRF] Do not segfault when a NewGRF contains an Action 2 and Action 3 but no Action 0 (r18759)
- Fix: [NewGRF] CircularTileSearch skipped a few tiles close to the starting tile, as a result some NewGRF houses could be placed too close together [FS#3495] (r18755)
- Fix: The cargo payment button states were not properly set on opening the window [FS#3492] (r18750)
- Fix: [NoAI] The AI's name and version in the debug panel was not properly centered [FS#3491] (r18749)
- Fix: Clear the cached NewGRFs of a server when receiving a reply instead of when requesting the information. With slow/unstable network connections it would look like the NewGRF settings button went randomly missing [FS#3489] (r18746)
- Fix: Do not toggle the sticky- and shading-button twice per mouseclick when clicking fast [FS#3487] (r18744)
- Fix: [NewGRF] House prop 1D was trashed when a NewGRF contains prop 14 after prop 1D (r18742)
- Fix: Building trees on snow with rocks underneed caused an assert [FS#3501] (r18739)
- Fix: When a tree died while there was snow the amount of snow on the tile changed (r18738)
- Fix: [NewGRF] VarAction2Station variable 67 was not swapped properly for orientation (r18737)
1.0.0-beta2 (2010-01-05)
------------------------------------------------------------------------
- Feature: Do not delete the rough/rocky status of a tile when it is covered by snow, this allows rocky tiles under snow if you have a variable snowline (r18719)
@@ -5,7 +241,7 @@
- Feature: Allow virtually paying a percentage of the leg profit in feeder chains. This to give the user a better chance to get a feeder system without 'losses' (r18703)
- Feature: Configurable slope steepness for trains from 0% to 10%, default is 3% as before [FS#3459] (r18674)
- Feature: Allow contour-map to be shown with coloured industries in smallmap [FS#567] (r18665)
- Add [NoAI]: AIEngine::IsBuildable to check if you can build a certain engine (r18687)
- Add: [NoAI] AIEngine::IsBuildable to check if you can build a certain engine (r18687)
- Change: [NoAI] Merge buoy and waypoint functions (r18725)
- Change: [NoAI] AIEngine::IsValidEngine will now also return true when you have at least one vehicle of that type even if you cannot build it anymore (r18687)
- Change: Update Squirrel from 2.2.3 to 2.2.4 (r18639)
@@ -28,7 +264,7 @@
- Fix: [NewGRF] Tile area of waypoints was not correctly given to NewGRFs in case of multi tile waypoints (r18679)
- Fix: [NewGRF] If an action B did not have a 'data' string but would print it OpenTTD would segfault [FS#3452] (r18671)
- Fix: Update all tiles when snowline height changes in larger steps than one tile [FS#3455] (r18670)
- Fix: [NoAI] crash when trying to get the order destination of a 'nearest depot' order [FS#3454] (r18667)
- Fix: [NoAI] Crash when trying to get the order destination of a 'nearest depot' order [FS#3454] (r18667)
- Fix: Aircraft on the metropolitan airport took a long route to the closest loading pad [FS#3169] (r18661)
- Fix: [NewGRF] Wrong strings drawn for cargo subtype in vehicle details [FS#3443] (r18658)
- Fix: When trying to attach a wagon to an existing free wagon chain, do not attach it to itself [FS#3442] (r18653)
@@ -55,7 +291,7 @@
- Feature: Add the possibility to not make new tree tiles in-game (r18522)
- Feature: Moving of AIs in the AI configuration window [FS#3359] (r18516)
- Feature: Make maximum pathfinder penalties for finding depots customisable, also increase it slightly to 20 tiles worth of penalties (r18481)
- Feature: [strgen] Allow G and P to 'select' substrings of STRINGn for getting their gender (r18444)
- Feature: [Strgen] Allow G and P to 'select' substrings of STRINGn for getting their gender (r18444)
- Feature: Make penalty for road stop occupancy user configurable (r18404)
- Feature: Fully scalable, by font size and content, GUI and improved right-to-left language support [FS#1905] (r15800-r18350)
- Feature: Set the start time of a timetable (r18294)
@@ -119,7 +355,7 @@
- Change: Make pause on join pause during the whole joining (including download) phase [FS#3287] (r18054)
- Change: Prefer extmidi over allegro midi and allegro over null driver [FS#3272] (r17875)
- Change: Several improvements to the performance of CargoPackets/CargoLists; time spent in those functions reduces by 55-85% (r17840, r17836, r17818, r17814, r17812, r17801, r17736, r17735, r17733, r17731, r17730)
- Change: [SDL] make 'update the video card'-process asynchronious. Improvements of 2%-25% (real time) during fast forward on dual core/hyperthreading-enabled CPUs (r17776)
- Change: [SDL] Make 'update the video card'-process asynchronious. Improvements of 2%-25% (real time) during fast forward on dual core/hyperthreading-enabled CPUs (r17776)
- 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 (r17719)
- Change: [OSX] Do not use deprecated methods/undocumented functions [FS#1411] (r17712, r17711)
- Change: Make SDL's video driver more likely to be loaded than Allegro's video driver; SDL seems to perform better (r17583)
@@ -202,7 +438,7 @@
- Fix: When moving a wagon and only the last part of a dual headed engine you could split the dual headed engine over two vehicles. This could be used to crash servers [CVE-2009-4007] (r18462)
- Fix: [Windows] Forgot to load the symbol from SDL.dll (r18439)
- Fix: Do not run the 'jam protection' for vehicles in a depot [FS#3360] (r18428)
- Fix: [Windows] the help window would be too large in some cases [FS#3327] (r18424)
- Fix: [Windows] The help window would be too large in some cases [FS#3327] (r18424)
- Fix: Under some circumstances a pointer could be left untouched and then freed. Make sure this does not happen by ensuring it starts out as NULL instead of 'garbage' [FS#3298] (r18418)
- Fix: On slopes the original and better road layouts did not check their minimum distance requirements [FS#3332] (r18415)
- Fix: Aqueducts were not influenced by the 'long bridges' setting [FS#3338] (r18407)
@@ -350,7 +586,7 @@
0.7.2-RC2 (2009-07-21)
------------------------------------------------------------------------
- Fix: When marking trains stuck do not reset the unload/stuck counter when the vehicle is unloading. It will be automatically reset once the vehicle wants to leave the station [FS#3038] (r16901)
- Fix: [NoAI]: Small errors in the API documentation [FS#3037] (r16865)
- Fix: [NoAI] Small errors in the API documentation [FS#3037] (r16865)
- Fix: Savegames from before 0.4 would get their waypoint 'index' messed up (r16854)
- Fix: Cargo payments were not destroyed when a vehicle was destructed. This only happened when you crashed a vehicle while it was unloading [FS#3032, FS#3046] (r16801)
@@ -366,7 +602,7 @@
- Fix: Houses would not get build on the map edge [FS#3025] (r16795)
- Fix: Audio playback rate was fixed at 11025Hz regardless of the rate specified to the audio driver, resulting in incorrect playback speed. It is still preferable to use 11025Hz output rate if possible as OpenTTD's sample rate converter is very low quality (r16784)
- Fix: Do not use the same error message for turning around road vehicles and flipping parts of trains in the depot [FS#3019] (r16772)
- Fix: The win32 and win64 binary packages would not get their readme converted to DOS line endings (r16769)
- Fix: [Windows] The binary packages would not get their readme converted to DOS line endings (r16769)
- Fix: [NoAI] AITile::GetCargoProduction/Acceptance did not accept a radius of 0 anymore (r16767)
- Fix: In the refit window the 'Select cargo type to carry' line always showed the ship refit tooltip [FS#3018] (r16757)
- Fix: When loading a savegame Engine::grffile might be left NULL in certain cases (dynamic_engines enabled, articulated vehicle with only wagon-override action3s) (r16737)
@@ -535,7 +771,7 @@
0.7.0-RC2 (2009-03-23)
------------------------------------------------------------------------
- Change: [NewGRF] Expose GRF ID of engines in var action property 0x25 (r15739)
- Fix: Some (newer) GCCs have trouble compiling the Win32 specific part of fontcache.cpp; jumps across variable declarations [FS#2752] (r15818)
- Fix: Some (newer) GCCs have trouble compiling the Windows specific part of fontcache.cpp; jumps across variable declarations [FS#2752] (r15818)
- Fix: When sorting on cost do not sort on the running cost [FS#2749] (r15778)
- Fix: Do not show the message about reporting an AI crash for the dummy AI (r15774)
- Fix: Number of active clients was not always properly updated [FS#2475] (r15773)
@@ -590,7 +826,7 @@
- Fix: Undeterministic file sorting when the date is equal for all files [FS#2716] (r15657)
- Fix: Changing vehicle.dynamic_engines when there are already vehicles can cause crashes (r15656, r15586)
- Fix: Only ever call any vehicle callbacks after the whole articulated engine has been built (except 0x16) (r15654)
- Fix: new (this) is seldom a good idea as destructors of member variables are not run causing memory leaks [FS#2706] (r15652)
- Fix: C++'s new (this) is seldom a good idea as destructors of member variables are not run causing memory leaks [FS#2706] (r15652)
- Fix: [OSX] Hack around an OSX stupidity in < 10.4 w.r.t. signals by not having any signal handling support for OSX < 10.4 (r15648)
- Fix: Add an EngineOverrideManager to give the term 'compatible NewGRF' again some sense and to not crash because of trivial changes [FS#2612] (r15645)
- Fix: Closing a network connection twice in the case that sending packets starts failing while disconnecting [FS#2710] (r15644)
@@ -612,8 +848,8 @@
- Fix: Crash when saving a preset with unknown NewGRFs [FS#2646] (r15561)
- Fix: The font width cache was not updated when changing fonts causing the font spacing to be off when changing fonts in-game (auto font detection) (r15557)
- Fix: -v null crashing in 2051 due to trying to show the high score of the spectator (r15554)
- Fix: [NoAI] crash when setting a depot order to the southern part of a ship depot [FS#2656] (r15551)
- Fix: keep_all_autosave was ignored for dedicated servers/spectators [FS#2651] (r15546)
- Fix: [NoAI] Crash when setting a depot order to the southern part of a ship depot [FS#2656] (r15551)
- Fix: The keep_all_autosave setting was ignored for dedicated servers/spectators [FS#2651] (r15546)
- Fix: If a buoy was placed directly in front of a dock, that dock was seen as a buoy and thus skipped once within 3 tiles [FS#2653] (r15545)
- Fix: Extracting downloaded content did not work for Windows if one uses a non-ASCII path [FS#2650] (r15544)
- Fix: [NewGRF] When articulated parts have no available default cargo, use the cargo type of the first part for livery selection [FS#2617] (r15541)
@@ -671,7 +907,7 @@
- Feature: Double click to join selected server/company (r14209)
- Feature: Allow both the German as well as non-German toyland graphics as 'correct' and official graphics (r14197)
- Feature: Allow people to create their own base graphics easily and without requiring code changes (r14197)
- Feature: [NewGRF]: Add support for property 0x13 for Bridges. In other words, one can now specifies a 16 bits cost multiplier (r14172)
- Feature: [NewGRF] Add support for property 0x13 for Bridges. In other words, one can now specifies a 16 bits cost multiplier (r14172)
- Feature: Make it possible to choose between the DOS and Windows graphics packs while retaining the possibility to override the palette (r14151)
- Feature: Increase the size of the console backlog. Now it'll only remove backlog items when there are more than a threshold and when they are there longer than (another) threshold (r14056)
- Feature: Make it possible to filter list_patches output like it's done for other list_* console commands (r14041)
@@ -782,7 +1018,7 @@
- Fix: Moving the first vehicle of a train elsewhere might require a new unitnumber for the remaining chain which might not be available (r14384)
- Fix: Trams jumping when reversing on a single trambit (like caused during road construction reworks) or when (manually) reversing in a corner [FS#1852] (r14371)
- Fix: Multiheaded parts in free wagon chains were not connected (could cause desyncs) (r14366, r14362)
- Fix: [Win32] Some keypress combinations could be handled twice [FS#2206] (r14363)
- Fix: [Windows] Some keypress combinations could be handled twice [FS#2206] (r14363)
- Fix: The ownership of roadtiles was not properly set for very old savegames (including TTD's) making it impossible to remove some pieces of road [FS#2311] (r14359)
- Fix: Desync due to randomly ordered vehicle hash by flooding and road vehicle overtake/following (r14356, r14258)
- Fix: Signs were not updated on company bankruptcy/sell, and thus could have the colour of invalid player (r14348)
@@ -815,7 +1051,7 @@
- Fix: Incorrect cargo weights (r14144)
- Fix: GetSlopeZ() gets a virtual coordinate, not a tile (r14139)
- Fix: Close the 'manage vehicles' dropdown once the number of vehicles in the list reaches 0 [FS#2249] (r14133)
- Fix: [strgen] Changing order of parameters {X:...} did not work for strings including some {StringY} (r14111)
- Fix: [Strgen] Changing order of parameters {X:...} did not work for strings including some {StringY} (r14111)
- Fix: Desync due to bubbles in toyland (r14110)
- Fix: Make NewGRF action 0x06's changes persistent over the several loading stages [FS#1986] (r14102)
- Fix: Make the 'Transfer Credit' display aware of the entire consist, not only the first vehicle (r14098)
@@ -826,7 +1062,7 @@
- Fix: NewGRF callback 23 did not use the NewGRF compatible text stack [FS#2224] (r14058)
- Fix: NewGRF text stack's 'push word' did not move the data around properly (r14057)
- Fix: Long strings in the edit box would cause OpenTTD to stop drawing the string. This is especially noticable with low resolutions and the chat input box (r14054)
- Fix: [OSX] changed the condition for selecting 8 or 32 bpp blitter by default. Now we will pick 32 bpp if no 8 bpp fullscreen resolutions are available on the main display (the one with the dock) (r14032)
- Fix: [OSX] Changed the condition for selecting 8 or 32 bpp blitter by default. Now we will pick 32 bpp if no 8 bpp fullscreen resolutions are available on the main display (the one with the dock) (r14032)
- Fix: Crash when the AI tries to find the depot of an airport that does not have a depot [FS#2190] (r13999)
- Fix: MSVC cannot handle changed files in the prebuild event, so make the version determination a separate subproject [FS#2004] (r13998)
- Fix: The dedicated console removed any character that was not a printable ASCII character instead. Now it allows UTF8 formated strings too [FS#2189] (r13992)
@@ -959,7 +1195,7 @@
- Fix: Infinite loop in case your compiler decides that enums are unsigned by default (r12622)
- Fix: The convert signal button disallowed signal dragging when the signal GUI was closed (r12577)
- Fix: Binding to a specific IP could cause OpenTTD to not register properly with the masterserver if one has multiple external interfaces (r12574)
- Fix: min() has 32bit arguments, clamping of 64bit values did not work (r12572)
- Fix: The function min() has 32bit arguments, clamping of 64bit values did not work (r12572)
- Fix: Towns could not terraform when inflation rised terraform prices enough (r12564)
- Fix: Do not affect town rating change by the order in which we examine stations (r12561)
- Fix: Redraw the signal GUI when the signal drag density changes in the patch settings and vice versa (r12553)
@@ -991,7 +1227,7 @@
- Fix: Refresh vehicle details window when cached values are updated (r12378)
- Fix: Set cached value for vehicle property 25 before other cached values [FS#1854] (r12377)
- Fix: Do not close a dropmenu when clicking on a dropdown widget (r12374)
- Fix: win32 music driver fails if path is too long or if containing non-latin chars [FS#1849] (r12373, r12372)
- Fix: Windows music driver fails if path is too long or if containing non-latin chars [FS#1849] (r12373, r12372)
- Fix: Do not let window hide behind the main toolbar after resizing the screen [FS#1823] (r12371)
- Fix: Close language drop down when parent window is clicked/closed [FS#1853] (r12370)
- Fix: Reset train speed limits when _patches.realistic_acceleration changes (r12369)
@@ -1027,7 +1263,7 @@
- Fix: YAPF and NTP did not apply penalty for uphill tracks on steep slopes (r12313)
- Fix: Restore timetable from backupped orders and add group ID to the backup [FS#1549] (r12296)
- Fix: Do not draw trees nor lamps between tram tracks (r12290) [FS#1807]
- Fix: [Win32] Do not create save dir on install (r12269)
- Fix: [Windows] Do not create save dir on install (r12269)
- Fix: Autoreplace did not update vehicle index for timetable window [FS#1805] (r12261)
- Fix: GetProductionAroundTiles() may fail if only the second production slot exists (r12258)
- Fix: Town variables 0x9E to 0xAD (company ratings) returned wrong values (r12247)
@@ -1148,14 +1384,14 @@
- Fix: Do not allow modifying roadbits when other roadtypes would need different foundation (r11953)
- Fix: Loading of very old savegames was broken (r11951)
- Fix: Slope detection of bridge ramps. Helps YAPF and Trolly (r11946)
- Fix: FileExists() failed for non latin paths (win32) (r11945)
- Fix: [Windows] FileExists() failed for non latin paths (r11945)
- Fix: Allow building drive-through road/tram stops at road/tram track that has no owner (r11944)
- Fix: 'BRIDGE_TOO_LOW_FOR_TERRAIN'-check was wrong for steep slopes (r11936)
- Fix: [Autoreplace] Single to dualhead locomotive replacefailed when player had enough money to replace and refit one but not enough to refit the last one as well [FS#1624] (r11929)
- Fix: [Autoreplace] Autoreplace could refit train engines to the wrong cargo type if the old engine had no cargo capacity and the new one had (r11928)
- Fix: Loading old, pre savegame version 2, savegames (r11925)
- Fix: AI was reading wrong tile slope while building road bridge (r11917)
- Fix: set correctly crossing state after train reversal, train leaving crossing, train crash (r11900)
- Fix: Set correctly crossing state after train reversal, train leaving crossing, train crash (r11900)
- Fix: Segmentation faults/wrong frees due uninitialized memory in the AI [FS#1658] (r11887)
- Fix: Assert when trying to remove rail from a house or industry tile [FS#1663,FS#1665-6-7-8,FS#1680,FS#1686-7-8 FS#1715 FS#1742 FS#1771 FS#1776](r11883)
- Fix: Crash in MP in vehicle group window if the currently selected group is deleted by another player (r11878)
@@ -1420,7 +1656,7 @@
- Fix: Clone vehicles will no longer refit for free (r9689)
- Fix: Improved loading does not use a huge amount of processing power anymore when having a lot of trains [FS#423] (r9683)
- Fix: Truncate the NewGRF information text in the NewGRF GUI if it is too long (r9449)
- Fix: Cancel in password queries reduces amount of players in the network game when they have not joined the game yet [FS#688] r9378
- Fix: Cancel in password queries reduces amount of players in the network game when they have not joined the game yet [FS#688] (r9378)
- Fix: If all news-setting buttons show 'full', make the ALL-button show 'full' too (r9137)
- Fix: Open and close messages now have their own setting, so you can hide economy changes, but do show open/close of industries [FS#525] (r9097)
- Fix: Do not make owner signs transparent, as then you loose the information who it owns [FS#637] (r9067)
@@ -1438,8 +1674,8 @@
- Fix: Rail vehicles can no longer enter tunnels or bridgeheads with wrong railtype (r7976)
- Fix: When path finding onto a bridge or tunnel end from previous tile (but not warping from the opposite end) check the enter direction. This fixes signal setting if a rail ends on the top of a tunnel end (r7718)
- Fix: When following path for signals, do not skip back to the previous tile, as for tunnels and bridge ends the entering direction is wrong (r7717)
- Fix: [YAPF] suppress 'Train is lost' message if path finding ended on the first two-way red signal due to YAPF.rail_firstred_twoway_eol option (r7628)
- Fix: [OPF] signal update was incorrectly propagated (r7620)
- Fix: [YAPF] Suppress 'Train is lost' message if path finding ended on the first two-way red signal due to YAPF.rail_firstred_twoway_eol option (r7628)
- Fix: [OPF] Signal update was incorrectly propagated (r7620)
0.5.3 (2007-09-15)
@@ -1484,7 +1720,7 @@
0.5.3-RC1 (2007-06-28)
------------------------------------------------------------------------
- Feature: Make the client list window (for network games) stickyable (r10293)
- Feature: console command to get the current game date (r10137)
- Feature: Console command to get the current game date (r10137)
- Fix: Waypoints could be renamed when you are not the owner (r10368)
- Fix: Smooth economy did not close primary industries and it allowed increasing of production of industries that should not have rising productions (r10348, r10347, r10290)
- Fix: Acceleration for trains on slopes is not calculated properly [FS#786] (r10344, r10317)
@@ -1544,7 +1780,7 @@
- Fix: Only non dedicated servers cannot have 0 players [FS#765] (r9785)
- Fix: Remove arbitrary limit on length of NewGRF strings (r9775)
- Fix: [NewGRF] Ignore axis-bit of station tile layouts [FS#756] (r9758)
- Fix: [win32] Dead key and open/close console (r9728)
- Fix: [Windows] Dead key and open/close console (r9728)
- Fix: When you have closed the 'Load game'/'New game' windows which you started from the 'start server' menu, you should not start a server when starting a new game [SF#1244842] (r9757)
- Fix: Trains were lost after autorenewal/autoreplace [FS#732] (r9753)
- Fix: Stop flooded towns from building roads on water [FS#598] (r9743)
@@ -1579,8 +1815,8 @@
0.5.1-RC2 (2007-03-23)
------------------------------------------------------------------------
- Fix: crashes when the chatbox would be drawn outside of the main window [FS#701] (r9420)
- Fix: reading out of an array caused a segmentation fault [FS#694] (r9394)
- Fix: Crashes when the chatbox would be drawn outside of the main window [FS#701] (r9420)
- Fix: Reading out of an array caused a segmentation fault [FS#694] (r9394)
0.5.1-RC1 (2007-03-20)
@@ -1602,7 +1838,7 @@
- Fix: Difficulty level button was not selected when opening the difficulty window (r9117)
- Fix: The wrong catenary wires were drawn for tunnel entrances [FS#612] (r9077)
- Fix: The intercontinental airport used 'T-junction' runway sprites when there is no exit in the middle of the runway as in the city airport [FS#529] (r9076)
- Fix: [win] dedicated console now does not need an extra 'enter' to fully quit [FS#459] (r9074)
- Fix: [Windows] Dedicated console now does not need an extra 'enter' to fully quit [FS#459] (r9074)
- Fix: Take over companies properly in multiplayer games [FS#459] (r9071)
- Fix: When a bribe failed and you have not picked up cargo yet, you would never be able to do so for a given station [FS#404] (r9070)
- Fix: Do not keep on scrolling for non-numeric values in settings, but require reclick [FS#663] (r9064)
@@ -1612,12 +1848,12 @@
- Fix: Play the correct engine sound based on the engine type instead of the sprite (r9009)
- Fix: New locomotive names were not announced in the news, it said 'new railway locomotive available - railway locomotive' [FS#581] (r9000, r9001)
- Fix: [NewGRF] Do not select a disabled platform length/number of track count when going out of drag-drop mode [FS#450] (r8999)
- Fix: [win] Resolution doubled in cfg file when fullscreen mode used [FS#642] (r8994)
- Fix: [Windows] Resolution doubled in cfg file when fullscreen mode used [FS#642] (r8994)
- Fix: The industry list should also be (re)set when the number of industries is 0 [FS#656] (r8980)
- Fix: [win] Possible buffer overflow if unicode text is pasted into an input box and needs trimming (r8975)
- Fix: [win] Support compilation with the Vista Platform SDK (r8974)
- Fix: [Windows] Possible buffer overflow if unicode text is pasted into an input box and needs trimming (r8975)
- Fix: [Windows] Support compilation with the Vista Platform SDK (r8974)
- Fix: Crash on loading savegames with GRFs that do not have their GRF info/name set (r8955)
- Fix: [NewGRF] support for vehicle variable 48 was wrong (r8943)
- Fix: [NewGRF] Support for vehicle variable 48 was wrong (r8943)
0.5.0 (2007-02-27)
@@ -1676,10 +1912,10 @@
------------------------------------------------------------------------
- Codechange: Add Lithuanian language as an official translation (r7806)
- Fix: The configure script did not work work for dash, a sh compatible shell [FS#485] (r7893)
- Fix: [OSX] control + enter no longer fullscreens, interfered with team-chat (r7886)
- Fix: [OSX] Control + enter no longer fullscreens, interfered with team-chat (r7886)
- Fix: Offset engines/wagons by half width in details window; fixes overflowing for display (r7864)
- Fix: [OSX] Remove incorrect debug message about missing grf files (r7766)
- Fix: [sdl] sometimes ALT-TAB could trigger the fast forward (r7727)
- Fix: [SDL] Sometimes ALT-TAB could trigger the fast forward (r7727)
0.5.0-RC2 (2006-12-31)
@@ -1715,7 +1951,7 @@
- Feature: Allow towns to be built on top of trees in the scenario editor [FS#396] (r7152)
- Feature: Allow over-building of compatible railtypes, i.e. normal and electrified rail. If building electrified rail, normal rail is upgraded for you (at a cost) (r7106)
- Feature: Additional positioning for long dropdown lists with scrollbar support if dropdown list would not fit (r7086)
- Feature: [win32] Remember the window size between restarts when quit in fullscreen mode (r7061)
- Feature: [Windows] Remember the window size between restarts when quit in fullscreen mode (r7061)
- Feature: Increase the chatbuffer of chat messages, messages longer than the graphical box will be wrapped to a new line (r6956)
- Feature: Allow typing longer text than visible for an editbox; it will scroll properly now (r6954)
- Feature: Allow spectators to team-speak to eachother (r6933)
@@ -1746,7 +1982,7 @@
- Feature: Possibility to generate scenarios by importing heightmaps. It can be in PNG or BMP format
- Feature: New (optional) landscape generator based on TerraGenesis Perlin noise with GUI, progress bar and fine-tuning options (r5946)
- Feature: Filter for textboxes to only allow input of certain patterns (like numbers only) (r5944)
- Feature: [win32] Remember the maximized state of the game window and restore on start [FS#234] (r5874)
- Feature: [Windows] Remember the maximized state of the game window and restore on start [FS#234] (r5874)
- Feature: Add an icon to the SDL openttd executable (r5872)
- Feature: Also allow horizontal and vertical rails on steep slopes (r5864)
- Feature: Allow building of (certain) rails, roads and bridge ramps on steep sloped tiles (r5833)
@@ -1789,10 +2025,10 @@
- Codechange: Remove the 'unsorted' vehicle sorter, because it's plain useless (r6270)
- Codechange: Remove MSVC6 support. The compiler was too stupid and too many workarounds were needed. Please switch to mingw or VC2005++ express (r5286)
- Codechange: Allow a switch in Makefile.config to disable threads in OpenTTD (r5978)
- Codechange: [win32] Add native x64 target to VS2005 project files (r5813)
- Codechange: [win32]The exception dialog showed the last modification-date of win32.c instead of the last compilation-date (r5801)
- Codechange: [Windows] Add native x64 target to VS2005 project files (r5813)
- Codechange: [Windows] The exception dialog showed the last modification-date of win32.c instead of the last compilation-date (r5801)
- Codechange: Add owner attribute to canals and locks. This makes them more useful in multiplayer games, as only the owner can delete them. Does not affect usage (r5084)
- Codechange: Add MSVC2005 support, project and solution files are in the _vs80.* files (r4581)
- Codechange: [Windows] Add MSVC2005 support, project and solution files are in the _vs80.* files (r4581)
- Codechange: [OSX] Shark (Xcode's profiling tool) can now relate CPU usage to lines (r3611)
- Codechange: Rewrite the multistop slot assignment system. More resource-friendly, several slot-assignment improvements (r3730, r4259)
- Codechange: Completely remove the deprecated -p parameter (is superseded by -n) (r3508)
@@ -1834,7 +2070,7 @@
- Fix: Disable main toolbar buttons showing company list drop downs when there are no companies [FS#356] (r6695)
- Fix: Autoreplace can now use the money for selling the old vehicle to build the new one (r6640)
- Fix: A loop-hole that allowed docks to be built regardless of town authority rating (r6477)
- Fix: [win32] The dedicated server could overwrite the keyboard input buffer before it was handled by OpenTTD (r6449)
- Fix: [Windows] The dedicated server could overwrite the keyboard input buffer before it was handled by OpenTTD (r6449)
- Fix: Reset the location of the last sound as that location can be outside the map when you are loading another, (smaller) map (r6437)
- Fix: Show an error message when executing 'scrollto x' with x < 0 or >= MapSize() instead of asserting later on [FS#340] (r6435)
- Fix: Station catchment area persists after switching tools [FS#136] (r6368)
@@ -1908,7 +2144,7 @@
- Fix: Crash when sorting an empty server list
- Fix: The build-tree window button defaulted to a place-push-button on opening where no treetype is selected
- Fix: Game crashes when cloning/autoreplace reaches train-limit
- Fix: [NTP] properly check for railtypes on non-plain-rail-tiles
- Fix: [NTP] Properly check for railtypes on non-plain-rail-tiles
- Fix: Trains could enter certain sloped rail tiles under bridges with incompatible rail type
- Fix: Ensure the map memory is cleared after it is allocated. This fixes random deserts that sometimes occurred
- Fix: Some weird behaviour with tile selection near bridges
@@ -1928,9 +2164,9 @@
- Fix: Removing roads on crossings was done without a check for ownership
- Fix: [Autoreplace] Fix drawing of train list for outdated engines
- Fix: Malicious clients/servers could crash the game [CVE-2006-1999, CVE-2006-1998]
- Fix: [Autoreplace] allow replacement of wagons even when the engine fails to be replaced
- Fix: [Autoreplace] Allow replacement of wagons even when the engine fails to be replaced
- Fix: Certain operations involving trains inside a depot could cause a crash
- Fix: [Autoreplace] cost for refitting a new vehicle is added to the cost animation (player always paid for it, it just was not shown)
- Fix: [Autoreplace] Cost for refitting a new vehicle is added to the cost animation (player always paid for it, it just was not shown)
- Fix: [OSX] Save/Load issues solved for OSX 10.3.9 universal binaries
- Fix: Illegal servers in the master-server list could kick the client back to the main menu, effectively making Multiplayer impossible
- Fix: [NPF] Do not mark tiles when debugging in multiplayer, this will cause desyncs
@@ -1940,7 +2176,7 @@
0.4.7 (2006-03-26)
------------------------------------------------------------------------
- Feature: [OSX] Add support for triple-binaries (PPC, PPC970, i386) (r4102)
- Fix: [OSX] crash when going to fullscreen (r4100)
- Fix: [OSX] Crash when going to fullscreen (r4100)
- Fix: Allow unused wagons to have their first cache set. Fixes faulty cache-warning message and noticably speeds up depot operations (r4094)
- Fix: [NPF] Trains & busses were unable to find a route when leaving a depot or bus stop (r4072)
@@ -1948,12 +2184,12 @@
0.4.6 (2006-03-22)
------------------------------------------------------------------------
- Codechange: [win32] Show the revision in crash.txt and enable the button to show the crash text in the crash-window (r3965)
- Codechange: [Windows] Show the revision in crash.txt and enable the button to show the crash text in the crash-window (r3965)
- Codechange: Add additional linker information to release builds to help figure out crashes more easily (r3526)
- Fix: [OSX] Cannot save game if name contains german umlauts (loading savegames with certain chars still look odd) [SF#1157244] (r4038)
- Fix: [OSX] major speedup for PPC fullscreen (r4034)
- Fix: [OSX] Major speedup for PPC fullscreen (r4034)
- Fix: [Makefile] Make sure the ICON_DIR gets created before copying files there (r4032)
- Fix: [win32] Change compiler settings to use the multithreaded CRT. This prevents certain crashes on multi-threaded machines (r4031)
- Fix: [Windows] Change compiler settings to use the multithreaded CRT. This prevents certain crashes on multi-threaded machines (r4031)
- Fix: [NPF] Road vehicles planning through the back of depots and stations [SF#1453646] (r4029)
- Fix: Use the title of a savegame in the saveload dialog-editbox (r4018)
- Fix: Improper resolution written to the configuration file when exiting from fullscreen (r4017)
@@ -1973,11 +2209,11 @@
- Fix: The tooltips for raising and lowering land buttons in the scenario editor are interchanged [FS#61] (r3959)
- Fix: Correctly restore the roadside after roadworks are finished (r3957)
- Fix: [Multistop] Check the status of the destination road stop instead of a station's first road stop. This only has effect with road vehicle queuing disabled (r3956)
- Fix: validate the setting of max_companies/spectators through the console (r3955)
- Fix: Validate the setting of max_companies/spectators through the console (r3955)
- Fix: Improve game-load times (r3954)
- Fix: On loading a game, GetPlayerRailtypes() did not account for the fact that vehicles are introduced a year after their introduction date. This will also relieve possible (rare) network desyncs (r3952)
- Fix: Restore plural forms of cargo types for several languages (r3951)
- Fix: [win32] Add directives to allow Visual Studio 2005 compilation (r3950)
- Fix: [Windows] Add directives to allow Visual Studio 2005 compilation (r3950)
- Fix: Crash in string code with openbsd/zaurus; alignment issues [SF#1415782] (r3948)
@@ -1994,10 +2230,10 @@
- Feature: New display option: 'transparent station signs' (r2438)
- Feature: You can now give transfer order to set up feeder systems (r2441)
- Feature: Removing tracks with the 'remove' tool, automatically removes signals on the tracks (r2469)
- Feature: [localisation] Allow changing the order of parameters in translated strings (r2573)
- Feature: [localisation] New way to specify plural forms (r2592)
- Feature: [localisation] Support genders (r2594)
- Feature: [localisation] Support cases (r2597)
- Feature: [Localisation] Allow changing the order of parameters in translated strings (r2573)
- Feature: [Localisation] New way to specify plural forms (r2592)
- Feature: [Localisation] Support genders (r2594)
- Feature: [Localisation] Support cases (r2597)
- Feature: Add support for truncating strings to a given (pixel) length (r2607)
- Feature: Overhaul DirectMusic MIDI backend, remove 'experimental' status (r2712)
- Feature: Change the driver probing algorithm: Use the first music/sound/video which succeeds initialising instead of bailing out after the first. No need to specify -snull if no soundcard is present anymore (r2728)
@@ -2005,7 +2241,7 @@
- Feature: Clone vehicles (r2764)
- Feature: When starting without a config file determine the language on basis of the current locale (r2777)
- Feature: [NewGRF] Add support for 'extended bytes' (r2872)
- Feature: [localisation] Major step twoards ISO-8859-15: Implement missing characters (r2879)
- Feature: [Localisation] Major step twoards ISO-8859-15: Implement missing characters (r2879)
- Feature: Implement the console command rm to remove savegames (r2941)
- Feature: Danish town names (r2957)
- Feature: Menu option to toggle console (r2958)
@@ -2041,9 +2277,9 @@
- Fix: Refitting to a cargo which is already carried by some vehicles takes their capacities into account for display (r2365)
- Fix: Add 'multihead' TTDPatch option to OpenTTD NewGRF flags-emulation (r2368)
- Fix: Make install tried to install scenarios in the (non-existing) personal dir when USE_HOMEDIR is specified (r2371)
- Fix: [console] update the example scripts in the scripts/ directory to reflect the new console functionality (r2372)
- Fix: [console] any line starting with a '#' is a comment so ignore it (r2372)
- Fix: [console] The special variables whose value can only be set by a custom process should, also print out their newly set value there (r2372)
- Fix: [Console] Update the example scripts in the scripts/ directory to reflect the new console functionality (r2372)
- Fix: [Console] Any line starting with a '#' is a comment so ignore it (r2372)
- Fix: [Console] The special variables whose value can only be set by a custom process should, also print out their newly set value there (r2372)
- Fix: [NewGRF] Ignore action 0 prop 0x20 (air drag) (r2377)
- Fix: [NewGRF] Further property stubs, help prevents subsequent incorrect reading of NewGRF data (r2378)
- Fix: Build year for mail compartment of planes was not set correctly, affected station ratings (r2380)
@@ -2051,7 +2287,7 @@
- Fix: Check the airport type when building an airport (r2382)
- Fix: Monkey-testing turned up some command crashes (r2383)
- Fix: Check selling land and setting player colour. Also an extra map-bounds check for terraforming (r2384)
- Fix: [realistic accel] Very slow trains no longer get an increase in maximum speed when part of them is in a depot (r2388)
- Fix: [Realistic acceleration] Very slow trains no longer get an increase in maximum speed when part of them is in a depot (r2388)
- Fix: [NewGRF] Load power for dual-headed engines correctly (r2400)
- Fix: [NewGRF] When resolving callbacks, dont ignore wagon overrides (r2410)
- Fix: Station ratings are not affected by speed limits from realistic acceleration anymore (r2411)
@@ -2065,7 +2301,7 @@
- Fix: Using the mouse wheel could lead to a crash if mouse was not over a widget (r2530)
- Fix: Blinking 'lock' gfx in multiplayer games (r2548)
- Fix: Remove original train pathfinder. Enhanced old pathfinder (r2553)
- Fix: Spaces in the path to the MIDI files caused the win32 MIDI player to fail (r2563)
- Fix: Spaces in the path to the MIDI files caused the Windows MIDI player to fail (r2563)
- Fix: Set server map name to the loaded name of the game/scenario (r2610)
- Fix: Improve the old pathfinder. Changed it to A* instead of Dijkstra. Benchmark shows that NTP is now around 10x faster than NPF (r2635)
- Fix: Correctly save and load company_value, it's 64 bits wide, not 32 bits (r2684)
@@ -2078,11 +2314,11 @@
- Fix: Return a proper version number, when testing the TTDPatch version in the SkipIf action (r2862)
- Fix: Change the way NewGRFs are loaded, this saves quite some sprite slots - about 2000 for DBSetXL for example (r2868)
- Fix: Several format string vulnerabilities and buffer overflows in the network code [CVE-2005-2764, CVE-2005-2763] (r2899)
- Fix: fixed issue where autorenewed vehicles did not get all stats updated (r2912)
- Fix: Fixed issue where autorenewed vehicles did not get all stats updated (r2912)
- Fix: Exit the child of the extmidi backend with _exit() instead of exit(), because we do not want any atexit handlers - especially flushing output streams - to run, if exec() fails (r2938)
- Fix: Server crash with 'say'-command (r2950)
- Fix: Fix win32 midi volume level control which did not work (r2960)
- Fix: [OSX] quitting the game no longer leaves a process behind that eats all the CPU power (r3281)
- Fix: Fix Windows midi volume level control which did not work (r2960)
- Fix: [OSX] Quitting the game no longer leaves a process behind that eats all the CPU power (r3281)
- Fix: Fix for UFO-broken waypoint [SF#1216203] (r2961)
- Fix: [NewGRF] Include missing grf feature canal
- Fix: [NewGRF] Add bounds checking to VehicleChangeInfo for vehicles
@@ -2137,8 +2373,8 @@
------------------------------------------------------------------------
- Feature: Add 'clear' command and CTRL+L to empty console window
- Feature: add the possibility to print out the current debug-level
- Fix: [MacOSX] default path for midi player on mac is now correct again
- Feature: Add the possibility to print out the current debug-level
- Fix: [MacOSX] Default path for midi player on mac is now correct again
- Fix: Updated makefile for FreeBSD
- Fix: Text overflows in about box
- Fix: Link error while compiling as dedicated server
@@ -2170,30 +2406,30 @@
- Feature: Saving vehicle sorting criteria for each vehicle type [SF#1093261]
- Feature: Resizable orders GUI [SF#1107690]
- Feature: Focus keyboard on input-box in Multiplayer Menu [SF#1166978]
- Feature: terrain hotkeys nonfunctional in scenario editor (D,Q,W,E,R,T,Y,U fltr) [SF#1174313]
- Feature: Terrain hotkeys nonfunctional in scenario editor (D,Q,W,E,R,T,Y,U fltr) [SF#1174313]
- Feature: Complete rework of console and new commands like ls, save, load, help, etc
- Feature: Signs are shown in the colour of the player who created them
- Feature: Add cheat option to set production of raw-material industries in game
- Feature: Replace trian GUI remembers railtype selected from the dropdown menu
- Feature: Improved Autoreplace
- Feature: many more smaller features :D
- Feature: <any more smaller features :D
- Fix: A wrong error message was displayed when trying to [SF#1108618]
- Fix: Game does not crash any more when a NewGRF file does not exist [SF#1110407]
- Fix: Clearing land for free by reallocating HQ [SF#1112469]
- Fix: Clearing land for free by reallocating HQ [SF#1112469]
- Fix: crash when accessing hi-scores in editor, it is now disabled [SF#1113037]
- Fix: Crash when accessing hi-scores in editor, it is now disabled [SF#1113037]
- Fix: Game no longer crashes when right-clicking a disabled Full Load button [SF#1113399]
- Fix: Dedicated server boots again [SF#1114100]
- Fix: Game crashed sometimes when there were no industries in the map [SF#1114950]
- Fix: In the main menu, when starting a new game while the load game dialog is open, openttd asserts [SF#1115200]
- Fix: non-stop orders are no longer accidently skipped [SF#1117538]
- Fix: Non-stop orders are no longer accidently skipped [SF#1117538]
- Fix: Generate the correct smoke type for diesel trains [SF#1116619]
- Fix: Max passengers / mail variables are now 32 bit [SF#1119308]
- Fix: Better test if a string actually contains any console command [SF#1109400]
- Fix: 'Play scenario' now loads game options and difficulty, 'Load game' starts game with user-selected values [SF#1108637]
- Fix: carriages of NewGRFs can be refitted again [SF#1143587]
- Fix: Carriages of NewGRFs can be refitted again [SF#1143587]
- Fix: Production values of temperate-climate banks can now be altered [SF#1117730]
- Fix: openttd: ship_cmd.c:642 ... Assertion failed. Mapwrap fixed in ship_cmd.c (was implicitely ok before biggermaps) [SF#1118810]
- Fix: Mapwrap fixed in ship_cmd.c (was implicitely ok before biggermaps) [SF#1118810]
- Fix: Assertion error on kick. When a company is cleaned all its windows need to be closed. For global vehicle lists, the no-staiton index of -1 was not taken into account [SF#1117327]
- Fix: Speeding up when pressing ALT+TAB (Windows) [SF#1114261]
- Fix: Signals dissaper after typing text and pressing enter!. Signs in Scenario Editor have no owner so ignore that [SF#1149403]
@@ -2203,11 +2439,11 @@
- Fix: Crash with german umlauts in station names [SF#1155696]
- Fix: Segmentation fault when loading savegame, out of bounds array check [SF#1158618]
- Fix: Autosave ignoring settings [SF#1149487]
- Fix: Infinite access for A:\ (win32). Patch [1171208]. Only requery drive(s) if the user changes a directory, also surpress the OS error box that pops up on some windows machines [SF#1024703]
- Fix: [Windows] Infinite access for A:\. Only requery drive(s) if the user changes a directory, also supress the OS error box that pops up on some windows machines [SF#1024703]
- Fix: Create Lake and draggable Create Desert tools [SF#1095110]
- Fix: Trains 'Go to depot' button: click twice skip to next order [SF#1172878]
- Fix: Engine power not updated w/auto replace' autoreplace now forces an update of the cache [SF#1146215]
- Fix: Path displaying as 'C:\\' in saveload window win32-only [SF#1173690]
- Fix: [Windows] Path displaying as 'C:\\' [SF#1173690]
- Fix: Click & drag removal of road assertion fail [SF#1179892]
- Fix: Max loan always in euros, use _opt_ptr instead of _opt [SF#1174237]
- Fix: AI orders its vehicles to a competitor's truck stop [SF#1184201]
@@ -2219,15 +2455,15 @@
- Fix: No HQ present for competitor, disable 'View HQ' button [SF#1187613]
- Fix: Pre-signal stays red when there is only a single exit signal [SF#1193048]
- Fix: Train in tunnel is not properly detected by signal code [SF#1185176]
- Fix: [NewGRF] rotors of custom helicopters are displayed correctly in the hangar window
- Fix: [NewGRF] Rotors of custom helicopters are displayed correctly in the hangar window
- Fix: Scenario Editor now handles human-made roads better (try to build a city layout before placing the city, finally that works very nice)
- Fix: [NewGRF] helicopters are correctly recognized
- Fix: [Autoreplace] made sure that planes only show planes in replace GUI and helicopters only show helicopters
- Fix: [NewGRF] Helicopters are correctly recognized
- Fix: [Autoreplace] Made sure that planes only show planes in replace GUI and helicopters only show helicopters
- Fix: Crash when generating tropical maps
- Fix: [Autoreplace] Cheaters can no longer exploit autoreplace to get vehicles, that's not invented yet
- Fix: [Autoreplace] Fixed a stupid bug introduced in r1687, that made a crash if anybody tried to autoreplace anything but an aircraft
- Fix: Expand railroad stations beyond maximum spread
- Fix: [Autoreplace] fixed a typo that could prevent autoreplaced aircraft from automatically go to a hangar
- Fix: [Autoreplace] Fixed a typo that could prevent autoreplaced aircraft from automatically go to a hangar
- Fix: Hacked clients can no longer be used to build vehicles that are not available yet
- Fix: Minimum profit of vehicles was calculated wrong for Performance Rating
- Fix: No longer a station where you only unload is bad for your town-rating
@@ -2238,38 +2474,38 @@
0.3.6 (2005-01-24)
------------------------------------------------------------------------
- Feature: resizable windows. All useful windows are already made resizable
- Feature: highscore chart (accessible from the difficulty window) with top5 companies for a given difficulty (select the difficulty in the menu)
- Feature: endgame score on 1 jan 2051 where you are added to the highscore if sufficiently large points have been accumulated. Game is paused while
- Feature: Resizable windows. All useful windows are already made resizable
- Feature: Highscore chart (accessible from the difficulty window) with top5 companies for a given difficulty (select the difficulty in the menu)
- Feature: Endgame score on 1 jan 2051 where you are added to the highscore if sufficiently large points have been accumulated. Game is paused while
- Feature: Visually enhanced autorail placing
- Feature: Autoreplace Vehicles (accessible from the vehicle lists)
- Feature: A counter to tell how many engines you have of each type to the autoreplace vehicle windows
- Feature: A display for the total map population to the town display
- Feature: [network] RCon (Remote console)
- Feature: hotkeys for dock and airport toolbar (see http://wiki.openttd.org/index.php/Hotkeys)
- Feature: [Network] banning system (mostly tnx to guru3) A server can ban people via ClientList using 'ban', 'unban', 'banlist'
- Feature: [Network] server can now pause and unpause a game through the console. Use 'pause' and 'unpause'
- Feature: [Network] RCon (Remote console)
- Feature: Hotkeys for dock and airport toolbar (see http://wiki.openttd.org/index.php/Hotkeys)
- Feature: [Network] Banning system (mostly tnx to guru3) A server can ban people via ClientList using 'ban', 'unban', 'banlist'
- Feature: [Network] Server can now pause and unpause a game through the console. Use 'pause' and 'unpause'
- Feature: [OS/2] OS/2 support is now finished (Fixes for networking, file selection, keyboard input, plus many other minor issues)
- Feature: [SDL] Show revision number in window title
- Feature: [Unix] Check which gcc version is present and only set available compiler flags
- Feature: [Windows] CTRL+V (Paste) now works on all editboxes. This includes 'Add Server', chat, etc
- Feature: [Windows] dedicated server is now functioning correctly
- Feature: [Windows] Dedicated server is now functioning correctly
- Feature: Addded keyboard shortcuts for the order window
- Feature: Aircraft refit options have been restricted to 'sane' values
- Feature: allows setting the production values of the rawmaterial producing industries in the editor
- Feature: console support for loading maps. Use 'load', 'list_files' and 'goto_dir' to navigate and load games
- Feature: Allows setting the production values of the rawmaterial producing industries in the editor
- Feature: Console support for loading maps. Use 'load', 'list_files' and 'goto_dir' to navigate and load games
- Feature: Display server port in the multiplayer game info window
- Feature: dynamite in landscaping toolbar (hotkey 'D')
- Feature: Dynamite in landscaping toolbar (hotkey 'D')
- Feature: Improved Network Lobby GUI with a green dot if company income is positive (else red dot) and lock icon if company is password protected
- Feature: Make ottd compile on Zeta
- Feature: MD5 hash check for TTD files
- Feature: New companies receive a 5-year protection period against buying-up
- Feature: norwegian townnames
- Feature: Norwegian townnames
- Feature: Order Checking is only execute for ONE vehicle in an order-share system
- Feature: Passengers aircraft now ignore the amount of mail for 'full load any' options
- Feature: place multiple accepting industies nearby in the editor mode if the appropriate patches are set
- Feature: population in label of the town (patch setting)
- Feature: scrolling credits list (in alphabetical order)
- Feature: Place multiple accepting industies nearby in the editor mode if the appropriate patches are set
- Feature: Population in label of the town (patch setting)
- Feature: Scrolling credits list (in alphabetical order)
- Feature: Train window now shows the number of vehicles per row
- Feature: Swiss town-names [SF#1039061]
- Feature: Adding 16:10 resolutions for mainly laptops [SF#1090950]
@@ -2284,78 +2520,78 @@
- Fix: Slopes under high bridges were not flooded [SF#1090495]
- Fix: In scenario editor, when trees are placed randomly, they are no longer placed on farmland [SF#1092473]
- Fix: On create, the scrollbar of the server-list was not updated [SF#1092661]
- Fix: placing rocks in scenario editor. You can place rocks on trees and vice versa [SF#1092707]
- Fix: Placing rocks in scenario editor. You can place rocks on trees and vice versa [SF#1092707]
- Fix: Drive side in new games. Setting the driver side is possible during the game until someone buys road vehicles. In networked games only the server can change it [SF#1093200]
- Fix: no more glitches with many maps in the scenario list when creating server [SF#1093466]
- Fix: No more glitches with many maps in the scenario list when creating server [SF#1093466]
- Fix: Dissappearing rocks in Scenario Editor [SF#1093485]
- Fix: Toolbars accessible via keyboard in spectator mode [SF#1094092]
- Fix: When all stations in an aircraft's order list are demolished, the plane eventually crashes (running out of fuel) [SF#1095020]
- Fix: Servers list now also saves the port [SF#1095143]
- Fix: Crash when all vehicles from a vehicles per station list had been removed [SF#1098553]
- Fix: starting year patch goes out of range. Clamped year between 1920-2090 [SF#1099101]
- Fix: Starting year patch goes out of range. Clamped year between 1920-2090 [SF#1099101]
- Fix: Bug Fix - Vehicle Lists not updated at Acqusition [SF#1099225]
- Fix: Game crashes after the click on Rename (see also Bug 10992). There was no check for non-selected engine [SF#1099451]
- Fix: wrong tooltip for place desert button [SF#1100736]
- Fix: fast forward in main menu [SF#1100767]
- Fix: Wrong tooltip for place desert button [SF#1100736]
- Fix: Fast forward in main menu [SF#1100767]
- Fix: Crash if generating land while industry window is open. This also happened for towns and the land information window [SF#1101179]
- Fix: Configure Patches window text overflow [SF#1101906]
- Fix: console in dedicated server [SF#1101963]
- Fix: Console in dedicated server [SF#1101963]
- Fix: Game crashed when clicking 'new face' or 'company color' twice [SF#1102275]
- Fix: Vehicle lists are now redrawn when a vehicle arrives in a depot. Station-specific vehicle lists are now redrawn daily as well (not only the master list) [SF#1099535, SF#1102776]
- Fix: font size changing. Dedicated server did not have code filtering, 'tab' could result in bigger fonts [SF#1103113]
- Fix: Font size changing. Dedicated server did not have code filtering, 'tab' could result in bigger fonts [SF#1103113]
- Fix: Order Check messages are now validated before displayed [SF#1103187]
- Fix: Railroad tracks on slopes were not flooded [SF#1103301]
- Fix: Crashed trains do not initiate the lost vehicle message anymore [SF#1104350]
- Fix: On horizontal/vertical tracks you are also charged for building/removing signals on the parallel track on the same tile [SF#110452]
- Fix: Aircraft in hangar messages are now revalidated before display [SF#1104969]
- Fix: Destroyed train locks crossings [SF#1105112]
- Fix: upgrade rail fails when train under bridge [SF#1105281]
- Fix: Upgrade rail fails when train under bridge [SF#1105281]
- Fix: Trains do not think they're on a slope any more while they drive around in a tunnel [SF#1105959]
- Fix: Buoys can now only be removed if no ship has it in their schedule. (This makes buoys more useable in multiplayer games again, as buoys cannot be deleted by other players if they are used.) [SF#1105963]
- Fix: Graph's keys get confused [SF#1106354]
- Fix: placing signals with 2x1 drags is treated as placing a single signal [SF#1106930]
- Fix: console ignoring return character occasionally [SF#1107350]
- Fix: Placing signals with 2x1 drags is treated as placing a single signal [SF#1106930]
- Fix: Console ignoring return character occasionally [SF#1107350]
- Fix: Scenario creation bug; engines are of correct year when scenario is saved [SF#1108008]
- Fix: little red box in scenario editor [SF#1092474]
- Fix: scrolling through console sometimes crashed the whole game [SF#1099197]
- Fix: Little red box in scenario editor [SF#1092474]
- Fix: Scrolling through console sometimes crashed the whole game [SF#1099197]
- Fix: Catchment area with drag&drop stations [SF#1099209]
- Fix: [Network] 'kick 1' did crash dedicated servers
- Fix: [Network] A server no longer crashes when a client sends an invalid DoCommand, but drops the client instead
- Fix: [Network] Added packet protection. No longer a client or server
- Fix: [Network] Bug in bind system. Advertising failed on systems with more then 1 ip, and server_bind active to one of them
- Fix: [Network] Disabled 'money-cheat' (read: bug which could give people a lot of money)
- Fix: [SDL] now the binary never links to SDL if DEDICATED is set
- Fix: [Windows] somehow mousewheel was disabled on windows using SDL; reenabled again
- Fix: a modified client could try to replace a vehicle to an invalid engine ID and crash the server
- Fix: autoreplace vehicle lists are now redrawn when a new vehicle becomes available
- Fix: [SDL] Now the binary never links to SDL if DEDICATED is set
- Fix: [Windows] Somehow mousewheel was disabled on windows using SDL; reenabled again
- Fix: A modified client could try to replace a vehicle to an invalid engine ID and crash the server
- Fix: Autoreplace vehicle lists are now redrawn when a new vehicle becomes available
- Fix: Buy Vehicle GUI now shows HPs bigger than 32000 correctly
- Fix: Console alias, load_game functionality and load fix
- Fix: correct error message for when trying to build a railroad station over a bus/truck/etc-station
- Fix: Correct error message for when trying to build a railroad station over a bus/truck/etc-station
- Fix: Correct landscaping buttons in monorail and maglev toolbars
- Fix: dedicated server also writes to log file if active
- Fix: Dedicated server also writes to log file if active
- Fix: Desert-landscape does no longer crash
- Fix: Expand town is a bit more agressive
- Fix: finally zooming in/out always works
- Fix: fixed chat-bug (that from a certain moment, nobody could talk)
- Fix: fixed weight for double-head trains and with that the acceleration (now maglev lvl4 can reach their top speed, and are faster than lvl3)
- Fix: Finally zooming in/out always works
- Fix: Fixed chat-bug (that from a certain moment, nobody could talk)
- Fix: Fixed weight for double-head trains and with that the acceleration (now maglev lvl4 can reach their top speed, and are faster than lvl3)
- Fix: Full-Loading trains no longer get 'lost' after a while
- Fix: Graphs were not updated correctly when one graph with a certain selection was already open and another graph window was opened
- Fix: in multiplayer clientlist can only be opened once
- Fix: In multiplayer clientlist can only be opened once
- Fix: Loan does not count against the company value
- Fix: nasty bug where one could build one station OVER the other
- Fix: Nasty bug where one could build one station OVER the other
- Fix: No crash when creating a game with New English town names any more
- Fix: now helicopters will use a hangar in schedule to be replaced in, even if they are only set to service there. Since helicopters are serviced at helipads, they will only go there if they needs to be replaced or renewed. They will also use a hangar in an airport in the schedule if needed
- Fix: only a server can rename a town in a MP game
- Fix: really old maps do load again
- Fix: Now helicopters will use a hangar in schedule to be replaced in, even if they are only set to service there. Since helicopters are serviced at helipads, they will only go there if they needs to be replaced or renewed. They will also use a hangar in an airport in the schedule if needed
- Fix: Only a server can rename a town in a MP game
- Fix: Really old maps do load again
- Fix: Refit engine button is now disabled when cargo capacity equals zero
- Fix: server issue where some company names were wrong
- Fix: Server issue where some company names were wrong
- Fix: Ship Vehicle Lists are now redrawn correctly
- Fix: signal stays red if a track is removed
- Fix: solve AI related order-problem
- Fix: starting openttd with -g <invalid_name> now acts normal
- Fix: Signal stays red if a track is removed
- Fix: Solve AI related order-problem
- Fix: Starting openttd with -g <invalid_name> now acts normal
- Fix: The cost for an autorenew was not always send to the right player ;)
- Fix: Autorenewing multiheaded train engines now costs the correct amount. Used to be twice the correct price
- Fix: the scrollbar in the network gui (server list) now updates when scrolling
- Fix: The scrollbar in the network gui (server list) now updates when scrolling
- Fix: Train crashes should no longer desync the game
- Fix: When deleting an order, the next pointer was not cleared, resulting in some unusual behavoir from time to time
- Fix: You can now also delete automatically found servers by pressing 'del'
@@ -2381,7 +2617,7 @@
- Feature: Game compiles under BEOS_SERVER
- Feature: Game compiles under OS/2 (no network-support)
- Feature: OpenTTD runs with the grf files of the DOS version
- Feature: [Big Endian computers, which are mac and MorphOS]: are able to load savegames by TTD(Patch)
- Feature: [Big Endian computers, which are mac and MorphOS] Load savegames by TTD(Patch)
- Add: 'l' openes the landscaping toolbar globally
- Add: Make the town sometimes build streets on slopes
- Add: Manpage
@@ -2549,10 +2785,10 @@
- Fix: [Makefile] Fixed issue where sdl-config was needed even on systems without SDL
- Fix: [SDL] Performance fix fo palette animation and mouse jumping
- Fix: [SDL] Same resolution was displayed more than once in game options
- Fix: [SDL] Smoother mouse and performance fix, like in Win32
- Fix: [SDL] Smoother mouse and performance fix, like in the Windows video driver
- Fix: Wrong trains you can buy with scenarios [SF#963056]
- Fix: Minimap crash [SF#972087]
- Fix: Bug in '[a] weird non-uniform stations handling' [SF#972247]
- Fix: Bug in 'weird non-uniform stations handling' [SF#972247]
- Fix: Parent_list was too small [SF#976583]
- Fix: Memoryleak in parent_list [SF#981934]
- Fix: Max_loan in editor bug [SF#982666]
@@ -2579,8 +2815,8 @@
- Fix: Scenario editor pause bug [SF#1007630]
- Fix: Signals not updated after ClearTunnel Bug [SF#1008605, SF#985920]
- Fix: Too many save games prevented loading [SF#1009385]
- Fix: problem with transferred cargo crashes game [SF#1009567]
- Fix: build in pause is now a cheat instead of a patch [SF#1009621]
- Fix: Problem with transferred cargo crashes game [SF#1009567]
- Fix: Build in pause is now a cheat instead of a patch [SF#1009621]
- Fix: Wrong multihead selling [SF#1009631]
- Fix: Turning on the magic bulldozer removes oil rigs [SF#1010833]
- Fix: Drunk pilot [SF#1012086]
@@ -2616,7 +2852,7 @@
- Feature: Added support for 64 bit CPUs
- Feature: Added water quantity level 'very low', which is the default for easy mode now
- Feature: Realistic acceleration turned on, train must first slow down and stop before it can reverse
- Feature: [MorphOS]: Various small improvement to make the the game feel more native
- Feature: [MorphOS] Various small improvement to make the the game feel more native
- Feature: Alt + f now toggles full screen (alt + enter still works)
- Feature: [OSX] Command + q shows the quit window and command + f or enter toggles full screen (alt and control still works too)
- Feature: Autorenew, autorenews vehicles if enabled
@@ -2853,11 +3089,11 @@
- Feature: Clicking on the money brings up finances
- Feature: [OSX] Distribution now uses Apples package system for easier updates
- Feature: [OSX] Application is now a proper bundle application
- Change: Use save/ as save folder on win32
- Change: [Windows] Use save/ as save folder
- Change: Moved date in news window
- Change: Do not check if tiles around the clicked station is a station in order gui
- Change: Keep checkpoint button down after placing
- Change: Moved disk devices to bottom of list on win32
- Change: [Windows] Moved disk devices to bottom of list
- Change: Changed speedkey from Shift to Tab
- Change: Enhanced patches window with pages
- Change: Do not slow down trains as much on hills
@@ -2920,7 +3156,7 @@
- Feature: Road and rail removal by dragging a selection
- Feature: News item for 'train is unprofitable'
- Feature: News item for 'train is lost'
- Feature: [Win32] Double size mode (Ctrl-d to toggle)
- Feature: [Windows] Double size mode (Ctrl-d to toggle)
- Feature: 'Multiple similar industries in close proximity' option
- Feature: 'Multiple industries per down' option
- Feature: 'Crossing tunnels' option
@@ -2964,7 +3200,7 @@
0.1.4 (2004-03-25)
------------------------------------------------------------------------
- Feature: Crash submit system on win32
- Feature: Crash submit system on Windows
- Feature: Autosave
- Feature: In-game resolution selection via settings window
- Feature: Dutch town names
@@ -3027,8 +3263,8 @@
0.1.2 (2004-03-15)
------------------------------------------------------------------------
- Feature: Mouse wheel can be used to zoom in out on win32
- Feature: Implemented some support for resizing the window dynamically in win32
- Feature: Mouse wheel can be used to zoom in out on Windows
- Feature: Implemented some support for resizing the window dynamically in Windows
- Fix: Tunnel mouse icon for maglev and monorail
@@ -3038,7 +3274,7 @@
- Feature: Center windows properly in higher resolutions
- Feature: Command line -g flag now optionally takes a game to load
- Add: External MIDI driver for Unix version
- Add: DirectMusic driver for Win32 version
- Add: DirectMusic driver for Windows version
- Add: 'build tracks on slopes' feature
- Fix: Problem where directories were not displayed under Linux
- Fix: Colors in map window for routes

View File

@@ -11,7 +11,7 @@ log() {
}
set_default() {
released_version=""
released_version="1.0.1-RC2"
ignore_extra_parameters="0"
# We set all kinds of defaults for params. Later on the user can override
@@ -51,6 +51,7 @@ set_default() {
enable_lto="0"
enable_dedicated="0"
enable_network="1"
enable_ai="1"
enable_static="1"
enable_translator="0"
enable_unicode="1"
@@ -67,6 +68,7 @@ set_default() {
with_sdl="1"
with_cocoa="1"
with_zlib="1"
with_lzo2="1"
with_png="1"
enable_builtin_depend="1"
with_makedepend="0"
@@ -121,6 +123,7 @@ set_default() {
enable_lto
enable_dedicated
enable_network
enable_ai
enable_static
enable_translator
enable_unicode
@@ -136,6 +139,7 @@ set_default() {
with_sdl
with_cocoa
with_zlib
with_lzo2
with_png
enable_builtin_depend
with_makedepend
@@ -272,8 +276,12 @@ detect_params() {
--enable-ipo=*) enable_lto="$optarg";;
--enable-dedicated) enable_dedicated="1";;
--enable-dedicated=*) enable_dedicated="$optarg";;
--enable-network) enable_network="2";;
--enable-network=*) enable_network="$optarg";;
--disable-network) enable_network="0";;
--enable-ai) enable_ai="2";;
--enable-ai=*) enable_ai="$optarg";;
--disable-ai) enable_ai="0";;
--disable-static) enable_static="0";;
--enable-static) enable_static="2";;
--enable-static=*) enable_static="$optarg";;
@@ -319,6 +327,13 @@ detect_params() {
--without-zlib) with_zlib="0";;
--with-zlib=*) with_zlib="$optarg";;
--with-lzo2) with_lzo2="2";;
--without-lzo2) with_lzo2="0";;
--with-lzo2=*) with_lzo2="$optarg";;
--with-liblzo2) with_lzo2="2";;
--without-liblzo2) with_lzo2="0";;
--with-liblzo2=*) with_lzo2="$optarg";;
--with-png) with_png="2";;
--without-png) with_png="0";;
--with-png=*) with_png="$optarg";;
@@ -703,6 +718,14 @@ check_params() {
log 1 "checking network... disabled"
fi
if [ "$enable_ai" != "0" ]; then
log 1 "checking ai... found"
SCRIPT_SRC_DIR="$ROOT_DIR/src/3rdparty/squirrel/include"
else
log 1 "checking ai... disabled"
SCRIPT_SRC_DIR=""
fi
if [ "$enable_translator" != "0" ]; then
log 1 "checking translator... debug"
# -t shows TODO items, normally they are muted
@@ -718,15 +741,6 @@ check_params() {
log 1 "checking assert... disabled"
fi
SCRIPT_SRC_DIR="$ROOT_DIR/src/3rdparty/squirrel/include"
if [ ! -d "$SCRIPT_SRC_DIR" ]; then
log 1 "checking 3rdparty... NOT FOUND"
log 1 "ERROR: please make sure you have src/3rdparty/squirrel"
log 1 "ERROR: you can find the source at svn://svn.openttd.org/3rdparty/squirrel"
exit 1
fi
log 1 "checking 3rdparty... found"
pre_detect_with_zlib=$with_zlib
detect_zlib
@@ -744,6 +758,22 @@ check_params() {
fi
fi
pre_detect_with_lzo2=$with_lzo2
detect_lzo2
if [ "$with_lzo2" = "0" ] || [ -z "$lzo2" ]; then
log 1 "WARNING: liblzo2 was not detected or disabled"
log 1 "WARNING: OpenTTD doesn't require liblzo2, but it does mean that"
log 1 "WARNING: loading old savegames/scenarios will be disabled."
if [ "$pre_detect_with_lzo2" = "0" ]; then
log 1 "WARNING: We strongly suggest you to install liblzo2."
else
log 1 "configure: error: no liblzo2 detected"
log 1 " If you want to compile without liblzo2 use --without-liblzo2 as parameter"
exit
fi
fi
detect_png
detect_freetype
detect_fontconfig
@@ -988,7 +1018,7 @@ check_params() {
fi
if [ "$personal_dir" = "1" ]; then
if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "WINCE" ] || [ "$os" = "DOS" ]; then
if [ "$os" = "MINGW" ] || [ "$os" = "CYGWIN" ] || [ "$os" = "WINCE" ] || [ "$os" = "DOS" ] || [ "$os" = "HAIKU" ]; then
personal_dir="OpenTTD"
elif [ "$os" = "OSX" ]; then
personal_dir="Documents/OpenTTD"
@@ -1120,8 +1150,8 @@ make_compiler_cflags() {
# Enable some things only for certain GCC versions
cc_version=`$1 -dumpversion | cut -c 1,3`
if [ $cc_version -lt 30 ]; then
log 1 "configure: error: gcc older than 3.0 can't compile OpenTTD because of its poor template support"
if [ $cc_version -lt 33 ]; then
log 1 "configure: error: gcc older than 3.3 can't compile OpenTTD because of its poor template support"
exit 1
fi
@@ -1390,11 +1420,22 @@ make_cflags_and_ldflags() {
CFLAGS="$CFLAGS -DWITH_ZLIB"
fi
if [ "$with_lzo2" != "0" ]; then
if [ "$enable_static" != "0" ] && [ "$os" != "OSX" ]; then
LIBS="$LIBS $lzo2"
else
LIBS="$LIBS -llzo2"
fi
CFLAGS="$CFLAGS -DWITH_LZO"
fi
# 64bit machines need -D_SQ64
if [ "$cpu_type" = "64" ] && [ "$enable_universal" = "0" ]; then
CFLAGS="$CFLAGS -D_SQ64"
fi
CFLAGS="$CFLAGS -I$SCRIPT_SRC_DIR"
if [ "$enable_ai" != "0" ]; then
CFLAGS="$CFLAGS -I$SCRIPT_SRC_DIR -DENABLE_AI"
fi
if [ -n "$png_config" ]; then
CFLAGS="$CFLAGS -DWITH_PNG"
@@ -1608,7 +1649,7 @@ check_compiler() {
fi
machine=`eval $compiler $9 2>/dev/null`
ret=$?
eval "$2=$compiler"
eval "$2=\"$compiler\""
log 2 "executing $compiler $9"
log 2 " returned $machine"
@@ -1629,7 +1670,7 @@ check_compiler() {
# Check for manual compiler
machine=`$4 $9 2>/dev/null`
ret=$?
eval "$2=$4"
eval "$2=\"$4\""
log 2 "executing $4 $9"
log 2 " returned $machine"
@@ -1646,7 +1687,7 @@ check_compiler() {
if [ -n "$5" ]; then
machine=`$5 $9 2>/dev/null`
ret=$?
eval "$2=$5"
eval "$2=\"$5\""
log 2 "executing $5 $9"
log 2 " returned $machine"
@@ -1665,7 +1706,7 @@ check_compiler() {
# No $5, so try '$6'
machine=`$6 $9 2>/dev/null`
ret=$?
eval "$2=$6"
eval "$2=\"$6\""
log 2 "executing $6 $9"
log 2 " returned $machine"
@@ -1675,7 +1716,7 @@ check_compiler() {
# Maybe '$7'?
machine=`$7 $9 2>/dev/null`
ret=$?
eval "$2=$7"
eval "$2=\"$7\""
log 2 "executing $7 $9"
log 2 " returned $machine"
@@ -2236,10 +2277,11 @@ detect_library() {
# $1 - config-param ($with_zlib value)
# $2 - library name ('zlib', sets $zlib)
# $3 - static library name (libz.a)
# $4 - header name (zlib.h)
# $5 - force static (if non-empty)
# $4 - header directory ()
# $5 - header name (zlib.h)
# $6 - force static (if non-empty)
if [ -n "$5" ]; then force_static="1"; fi
if [ -n "$6" ]; then force_static="1"; fi
# 0 means no, 1 is auto-detect, 2 is force
if [ "$1" = "0" ]; then
@@ -2252,15 +2294,15 @@ detect_library() {
log 2 "detecting $2"
if [ "$1" = "1" ] || [ "$1" = "" ] || [ "$1" = "2" ]; then
eval "$2=`ls -1 /usr/include/*.h 2>/dev/null | egrep \"\/$4\$\"`"
eval "$2=`ls -1 /usr/include/$4*.h 2>/dev/null | egrep \"\/$5\$\"`"
eval "res=\$$2"
if [ -z "$res" ]; then
log 2 " trying /usr/include/$4... no"
eval "$2=`ls -1 /usr/local/include/*.h 2>/dev/null | egrep \"\/$4\$\"`"
log 2 " trying /usr/include/$4$5... no"
eval "$2=`ls -1 /usr/local/include/$4*.h 2>/dev/null | egrep \"\/$5\$\"`"
fi
eval "res=\$$2"
if [ -z "$res" ]; then
log 2 " trying /usr/local/include/$4... no"
log 2 " trying /usr/local/include/$4$5... no"
fi
eval "res=\$$2"
@@ -2323,11 +2365,15 @@ detect_library() {
}
detect_zlib() {
detect_library "$with_zlib" "zlib" "libz.a" "zlib.h"
detect_library "$with_zlib" "zlib" "libz.a" "" "zlib.h"
}
detect_lzo2() {
detect_library "$with_lzo2" "lzo2" "liblzo2.a" "lzo/" "lzo1x.h"
}
detect_libtimidity() {
detect_library "$with_libtimidity" "libtimidity" "libtimidity.a" "timidity.h"
detect_library "$with_libtimidity" "libtimidity" "libtimidity.a" "" "timidity.h"
}
detect_png() {
@@ -3108,11 +3154,13 @@ showhelp() {
echo " --with-midi=midi define which midi-player to use"
echo " --with-midi-arg=arg define which args to use for the"
echo " midi-player"
echo " --with-libtimidity enables libtimidity support"
echo " --with-allegrol[=allegro-config]"
echo " enables Allegro video driver support"
echo " --with-cocoa enables COCOA video driver (OSX ONLY)"
echo " --with-sdl[=sdl-config] enables SDL video driver support"
echo " --with-zlib[=zlib.a] enables zlib support"
echo " --with-liblzo2[=liblzo2.a] enables liblzo2 support"
echo " --with-png[=libpng-config] enables libpng support"
echo " --with-freetype[=freetype-config]"
echo " enables libfreetype support"
@@ -3125,6 +3173,8 @@ showhelp() {
echo " --with-psp-config[=psp-config] enables psp-config support (PSP ONLY)"
echo " --disable-builtin-depend disable use of builtin deps finder"
echo " --with-makedepend[=makedepend] enables makedepend support"
echo " --with-ccache enables ccache support"
echo " --with-distcc enables distcc support"
echo ""
echo "Some influential environment variables:"
echo " CC C compiler command"

1
configure vendored
View File

@@ -113,6 +113,7 @@ AWKCOMMAND='
if ($0 == "OS2" && "'$os'" != "OS2") { next; }
if ($0 == "PSP" && "'$os'" != "PSP") { next; }
if ($0 == "DEDICATED" && "'$enable_dedicated'" != "1") { next; }
if ($0 == "AI" && "'$enable_ai'" == "0") { next; }
if ($0 == "COCOA" && "'$with_cocoa'" == "0") { next; }
if ($0 == "DOS" && "'$os'" != "DOS") { next; }
if ($0 == "BEOS" && "'$os'" != "BEOS" &&

View File

@@ -91,7 +91,7 @@ the array so you can quickly see what is used and what is not.
<td class="bits">XXXX XXXX</td>
<td class="bits"><span class="option">~~~</span>X XXXX</td>
<td class="bits"><span class="free">OOOO</span> XXXX <span class="free">OOOO OOOO</span></td>
<td class="bits"><span class="free">OOOO</span> <span class="option">~~</span>XX</td>
<td class="bits"><span class="free">OOOO</span> XXXX</td>
<td class="bits"><span class="free">OOOO</span> XXXX</td>
<td class="bits">XXXX XXXX</td>
<td class="bits">XX<span class="free">OO OO</span>XX</td>
@@ -102,7 +102,7 @@ the array so you can quickly see what is used and what is not.
<td class="bits">-inherit-</td>
<td class="bits">-inherit-</td>
<td class="bits"><span class="free">OOOO</span> XXXX XXXX XXXX</td>
<td class="bits">XXXX <span class="option">~~</span>XX</td>
<td class="bits">XXXX XXXX</td>
<td class="bits">XXXX XXXX</td>
<td class="bits">-inherit-</td>
<td class="bits">XX<span class="free">OO OO</span>XX</td>
@@ -113,7 +113,7 @@ the array so you can quickly see what is used and what is not.
<td class="bits">-inherit-</td>
<td class="bits">-inherit-</td>
<td class="bits">XXXX XXXX XXXX XXXX</td>
<td class="bits"><span class="free">OOOO</span> <span class="option">~~</span>XX</td>
<td class="bits"><span class="free">OOOO</span> XXXX</td>
<td class="bits"><span class="free">OOOO</span> XXXX</td>
<td class="bits">XX<span class="free">O</span>X <span class="free">O</span>XXX</td>
<td class="bits">XX<span class="free">OO OO</span>XX</td>
@@ -136,7 +136,7 @@ the array so you can quickly see what is used and what is not.
<td class="bits">-inherit-</td>
<td class="bits">-inherit-</td>
<td class="bits">-inherit-</td>
<td class="bits">XXXX <span class="option">~~</span>XX</td>
<td class="bits">XXXX XXXX</td>
<td class="bits">-inherit-</td>
<td class="bits">XXXX<span class="free"> OOO</span>X</td>
<td class="bits">XXXX X<span class="free">O</span>XX</td>
@@ -146,7 +146,7 @@ the array so you can quickly see what is used and what is not.
<td class="caption">road depot</td>
<td class="bits">-inherit-</td>
<td class="bits">-inherit-</td>
<td class="bits">XXXX XXXX XXXX XXXX</td>
<td class="bits">-inherit-</td>
<td class="bits"><span class="free">OOOO OOOO</span></td>
<td class="bits"><span class="free">OOOO OOOO</span></td>
<td class="bits">XX<span class="free">OO OO</span>XX</td>
@@ -183,7 +183,7 @@ the array so you can quickly see what is used and what is not.
<td class="bits">XXXX XXXX</td>
<td class="bits"><span class="option">~~~</span>X XXXX</td>
<td class="bits">XXXX XXXX XXXX XXXX</td>
<td class="bits">XXXX <span class="option">~~</span>XX</td>
<td class="bits">XXXX XXXX</td>
<td class="bits">XXXX XXXX</td>
<td class="bits">XXXX XXXX</td>
<td class="bits"><span class="free">OO</span>XX XXXX</td>
@@ -206,7 +206,7 @@ the array so you can quickly see what is used and what is not.
<td class="bits">-inherit-</td>
<td class="bits">-inherit-</td>
<td class="bits">XXXX <span class="free">OOOO</span></td>
<td class="bits"><span class="option">~~~~ ~~~~</span></td>
<td class="bits"><span class="free">OOOO OOOO</span></td>
<td class="bits"><span class="option">~~~~ ~</span>XXX</td>
<td class="bits"><span class="free">OO</span>XX XXXX</td>
<td class="bits">XX<span class="free">O</span>X XXXX</td>
@@ -217,7 +217,7 @@ the array so you can quickly see what is used and what is not.
<td class="bits">-inherit-</td>
<td class="bits">-inherit-</td>
<td class="bits"><span class="free">OOOO OO</span>XX</td>
<td class="bits"><span class="option">~~~~ ~~~~</span></td>
<td class="bits"><span class="free">OOOO OOOO</span></td>
<td class="bits"><span class="option">~~~~ ~</span>XXX</td>
<td class="bits"><span class="free">OO</span>XX X<span class="free">O</span>XX</td>
<td class="bits"><span class="free">OOOO OOOO</span></td>
@@ -228,7 +228,7 @@ the array so you can quickly see what is used and what is not.
<td class="bits">-inherit-</td>
<td class="bits">-inherit-</td>
<td class="bits"><span class="free">OOOO OOOO</span></td>
<td class="bits"><span class="option">~~~~ ~~~~</span></td>
<td class="bits"><span class="free">OOOO OOOO</span></td>
<td class="bits">XXXX XXXX</td>
<td class="bits"><span class="free">OO</span>XX X<span class="free">O</span>XX</td>
<td class="bits"><span class="free">OOOO OOOO</span></td>
@@ -239,7 +239,7 @@ the array so you can quickly see what is used and what is not.
<td class="bits">-inherit-</td>
<td class="bits">-inherit-</td>
<td class="bits"><span class="free">OOOO OO</span>XX</td>
<td class="bits"><span class="option">~~~~ ~~~~</span></td>
<td class="bits"><span class="free">OOOO OOOO</span></td>
<td class="bits"><span class="option">~~~~ ~~~~</span></td>
<td class="bits"><span class="free">OO</span>XX X<span class="free">O</span>XX</td>
<td class="bits"><span class="free">OOOO OOOO</span></td>
@@ -250,7 +250,7 @@ the array so you can quickly see what is used and what is not.
<td class="bits">-inherit-</td>
<td class="bits">-inherit-</td>
<td class="bits"><span class="free">OOOO OOOO</span></td>
<td class="bits"><span class="option">~~~~ ~~~~</span></td>
<td class="bits"><span class="free">OOOO OOOO</span></td>
<td class="bits"><span class="option">~~~~ ~~~~</span></td>
<td class="bits"><span class="free">OO</span>XX X<span class="free">O</span>XX</td>
<td class="bits"><span class="free">OOOO OOOO</span></td>
@@ -308,7 +308,7 @@ the array so you can quickly see what is used and what is not.
<td class="bits">XXXX XXXX</td>
<td class="bits"><span class="option">~~~</span>X XXXX</td>
<td class="bits"><span class="free">OOOO OOOO OOOO OOOO</span></td>
<td class="bits">XXXX <span class="option">~~</span>XX</td>
<td class="bits">XXXX XXXX</td>
<td class="bits"><span class="free">OOOO OOOO</span></td>
<td class="bits">X<span class="free">OO</span>X XXXX</td>
<td class="bits">XX<span class="free">OO OO</span>XX</td>

View File

@@ -1,6 +1,6 @@
.\" Hey, EMACS: -*- nroff -*-
.\" Please adjust this date whenever revising the manpage.
.Dd Jun 10, 2009
.Dd Apr 01, 2010
.Dt OPENTTD 6
.Sh NAME
.Nm openttd
@@ -8,7 +8,6 @@
.Sh SYNOPSIS
.Nm
.Op Fl efhx
.Op Fl a Ar ai
.Op Fl b Ar blitter
.Op Fl c Ar config_file
.Op Fl d Ar [level | cat=lvl[,...]]
@@ -19,6 +18,7 @@
.Op Fl I Ar graphicsset
.Op Fl l Ar host[:port]
.Op Fl m Ar driver
.Op Fl M Ar musicset
.Op Fl n Ar host[:port][#player]
.Op Fl p Ar password
.Op Fl P Ar password
@@ -29,10 +29,6 @@
.Op Fl v Ar driver
.Sh OPTIONS
.Bl -tag -width ".Fl n Ar host[:port][#player]"
.It Fl a Ar ai
Set the AI, see
.Fl h
for a full list
.It Fl b Ar blitter
Set the blitter, see
.Fl h
@@ -80,6 +76,10 @@ Redirect DEBUG(), See
Set the music driver, see
.Fl h
for a full list
.It Fl M Ar musicset
Set the music set, see
.Fl h
for a full list
.It Fl n Ar host[:port][#player]
Join a network game, optionally specify a port to connect to and player to play as
.It Fl p Ar password

View File

@@ -1,6 +1,6 @@
OpenTTD's known bugs
Last updated: 2010-01-05
Release version: 1.0.0-beta2
Last updated: 2010-04-21
Release version: 1.0.1-RC2
------------------------------------------------------------------------
@@ -34,12 +34,16 @@ that you can find at: http://bugs.openttd.org
If the bugs are closed but still listed here it means that the bug is fixed
and that the nightlies and next major release will not have that bug.
- 3714 Some corrupted savegames can cause crashes
- 3695 Behaviour inconsistency building railway/road down towards water
- 3651 [OSX] Crash when selecting full screen
- 3648 [OSX] Crash when selecting music
- 3637 Second highest competing station gets penalised twice
- 3546 Ignoring signals might crash trains
- 3447 [OSX] SDL port is unuseable
- 3194 [OSX] Full screen strobing/flickering
- 2782 [OSX] Port hopelessly outdated
- 2585 [OSX] OS' mouse pointer showing
- 2484 [OSX] Cannot enter CJK characters
- 1140 [OSX] Not smooth moving map with touchpad
3) Known bugs that will not be solved:
@@ -133,6 +137,7 @@ Duplicate (station) names after renaming [FS#3204]
to the automatically generated names.
Extreme CPU usage/hangs when using SDL and PulseAudio [FS#3294]
OpenTTD hangs/freezes when closing, OpenTTD is slow, OpenTTD uses a lot of CPU
OpenTTD can be extremely slow/use a lot of CPU when the sound is
played via SDL and then through PulseAudio's ALSA wrapper. Under the
same configuration OpenTTD, or rather SDL, might hang when exiting
@@ -144,7 +149,7 @@ Extreme CPU usage/hangs when using SDL and PulseAudio [FS#3294]
use of interrupt-based scheduling may resolve sound problems for
some users. Under recent versions of Ubuntu Linux (9.04 and higher)
this can be accomplished by changing the following line in the
/etc/pulsa/default.pa file:
/etc/pulse/default.pa file:
load-module module-udev-detect
to
load-module module-udev-detect tsched=0

25
os/debian/NEWS Normal file
View File

@@ -0,0 +1,25 @@
openttd (1.0.0~rc3-2) unstable; urgency=low
The openttd package has been moved from contrib into main. Since the
OpenGFX free graphics set has been packaged for Debian, one can now run
OpenTTD without needing any of the resources from the original game
(though the original resources are still supported).
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 18 Mar 2010 13:09:35 +0100
openttd (0.7.0-1) unstable; urgency=low
Handling of AI players has changed in 0.7.0. This package no longer
contains any AI players, so playing against the computer is not possible
out of the box any longer. However, you can easily download AI players
through the new "Content Downloading Service", after which playing with
computer players is possible.
Loading old savegames with computer players is supported (AI players will
be converted according to the current AI settings), but at this moment
there are no AIs that completely handle any existing infrastructure built
by the old AI, so starting a new game might be more fun (especially since
most of the new AIs are a lot less erratic).
-- Matthijs Kooijman <matthijs@stdin.nl> Mon, 13 Apr 2009 15:11:20 +0200

View File

@@ -1,31 +1,41 @@
openttd for Debian
OpenTTD for Debian
------------------
To properly play this game, original data files are needed.
You should copy the data files from the original TTD into the data directory
(/usr/share/games/openttd/data). You should copy these files:
* trg1r.grf
* trgcr.grf
* trghr.grf
* trgir.grf
* trgtr.grf
* sample.cat
To properly play this game, you need a base graphics and sound set.
Currently, the graphics, sound and music files from the original
Transport Tycoon Deluxe game (Windows and DOS versions) are supported,
as well as the free graphics replacement set "OpenGFX", sound
replacement set "OpenSFX" (which is in non-free due to a restrictive
license) and the free music replacement set "OpenMSX".
-Music
For in game music (optional), you should copy all files in the gm/
subdir of your ttd installation to /usr/share/games/openttd/gm. You
should also install timidity and a soundfont (freepats is packaged in
Debian and works out of the box).
Normally, installing the openttd package should automatically install
openttd-opengfx as well, allowing OpenTTD to run out of the box. If you
want sound, you'll have to enable non-free sources and install the
openttd-opensfx package manually (or install the original Transport
Tyccon Deluxe sound files).
Don't forget to use -m extmidi if you want music, and if you have
problems, remember that not all audio devices support multiple
audiostreams (music and sound), so you might have to use software
mixing. My VIA AC97 device cannot do hardware mixing, for example.
The easiest way to install the OpenMSX music files is to use the in-game
content download system, which should offer the latest version of the
music files.
To find out how to install the original Transport Tycoon Deluxe graphics
sound files and music files, see readme.txt, section 4.1.
-Playing Music
In addition to installing a music set (see above), you'll also need
to install the timidity midi player, available in the timidity
package.
Remember that not all audio devices support multiple audiostreams
(music and sound), so you might have to use alsa software mixing or
pulseaudio.
-Scenarios
There are no scenarios included in this release. Scenarios can be
downloaded separately from the OpenTTD website and all over the
internet. Place scenarios in your ~/.openttd/scenario directory to
use them.
downloaded using OpenTTD's content service, which is available from
OpenTTD's main menu. If you have obtained a scenario through other
means, you can place it either in your ~/.openttd/scenario directory
or in the system-wide /usr/share/games/openttd/scenario directory.
-- Matthijs Kooijman <matthijs@stdin.nl> Mon, 01 Feb 2010 10:42:11 +0100
-- Matthijs Kooijman <matthijs@stdin.nl>, Tue, 25 Jan 2004 14:11:01 +0200

View File

@@ -1,136 +1,172 @@
openttd (1.0~svn-1) UNRELEASED; urgency=low
openttd (1.0.1~rc2-0) unstable; urgency=low
* Unreleased SVN version. Versioned to allow normal upgrades to released
* New upstream release 1.0.1-RC2
-- Matthijs Kooijman <matthijs@stdin.nl> Wed, 21 Apr 2010 21:36:21 +0200
openttd (1.0.1~rc1-0) unstable; urgency=low
* New upstream release 1.0.1-RC1
-- Matthijs Kooijman <matthijs@stdin.nl> Sat, 17 Apr 2010 23:36:21 +0000
openttd (1.0.0-1) unstable; urgency=low
* [30a2162] New upstream release 1.0.0. (Closes: #570104)
* [102698a] Make openttd-wrapper work with older mktemp versions.
-- Matthijs Kooijman <matthijs@stdin.nl> Fri, 02 Apr 2010 23:36:21 +0200
openttd (1.0.0~rc3-2) unstable; urgency=low
* [279c5ef] Recommend openttd-opengfx and suggest openttd-opensfx.
* [9330ad7] Update README.Debian concerning music files.
* [07bde24] Move openttd from contrib to main. (Closes: #560810)
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 18 Mar 2010 13:16:32 +0100
openttd (1.0.0~rc3-1) unstable; urgency=low
* [412d153] New upstream release 1.0.0~rc3.
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 18 Mar 2010 10:09:33 +0100
openttd (1.0.0~rc2-1) unstable; urgency=low
* [9c99af4] New upstream release 1.0.0~rc2.
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 04 Mar 2010 12:22:28 +0100
openttd (1.0.0~rc1-1) unstable; urgency=low
* [fe4eb51] New upstream release 1.0.0~rc1.
* [6aa2be0] Note that the embedded md5 implementation has a different
license.
* [39eb336] Remove lintian override for empty gm directory.
-- Matthijs Kooijman <matthijs@stdin.nl> Fri, 19 Feb 2010 13:00:53 +0100
openttd (1.0.0~beta4-1) unstable; urgency=low
* [6718224] New upstream release 1.0.0~beta4.
* [7b0fa8d] Remove some more docs that we don't want in the package.
* [bb9d744] Use liblzo2 instead of an embedded minilzo version.
* [949c06b] Explicitly disable iconv support.
-- Matthijs Kooijman <matthijs@stdin.nl> Fri, 19 Feb 2010 12:59:27 +0100
openttd (0.7.5-4) unstable; urgency=low
* [174d0b1] Don't use deprecated < in Replaces.
-- Matthijs Kooijman <matthijs@stdin.nl> Mon, 15 Feb 2010 00:35:33 +0100
openttd (0.7.5-3) unstable; urgency=low
* [d12fc5a] Make openttd-data replace openttd (< 0.7.5-2).
(Closes: #569679)
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 14 Feb 2010 16:56:31 +0100
openttd (0.7.5-2) unstable; urgency=low
[ Matthijs Kooijman ]
* [fbab21d] Switch to source format 3.0 (quilt).
* [85c0c7d] No longer check for (and complain about missing) datafiles
on installation and upgrades. (Closes: #524651, 562574)
* [827eb61] Split the architecture independent data into openttd-data.
(Closes: #492462)
* [6fbd9c7] Update README.Debian.
* [76a5148] Support cross compilation. (Closes: #550951)
* [2005bf8] Simplify the rules file, make debhelper do more stuff.
* [fc0500e] Remove some configure arguments.
* [8ca38bb] Explicitly enable or disable all of the dependencies.
* [e38fb3e] Let the upstream Makefile install documentation.
* [5954fcf] Update the watch file to the new upstream url scheme.
* [7249594] Fix typo in copyright file.
* [660fb61] Bump the Standards-Version to 3.8.4, with no changes
required.
* [f94ab89] Move the packaging git repository to git.debian.org.
-- Jordi Mallach <jordi@debian.org> Tue, 09 Feb 2010 21:40:24 +0100
openttd (0.7.5-1) unstable; urgency=high
* [cdcb73a] Imported Upstream version 0.7.5. This release fixes
CVE-2009-4007.
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 24 Dec 2009 00:55:45 +0100
openttd (0.7.4-1) unstable; urgency=low
* [a2c297b0] Imported Upstream version 0.7.4
* [0232a645] Make Debian-specific patches executable.
* [76be04b] Switch the Debian packaging to git.
-- Matthijs Kooijman <matthijs@stdin.nl> Tue, 15 Dec 2009 22:11:52 +0100
openttd (0.7.3-1) unstable; urgency=low
[ Matthijs Kooijman ]
* New upstream release
* Use printf instead of echo -en in openttd-wrapper to make it POSIX
compatible (Closes: #547758).
* Remove three patches that are now included in upstream.
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 01 Oct 2009 22:52:59 +0200
openttd (0.7.2-1) unstable; urgency=low
[ Matthijs Kooijman ]
* New upstream release
* Bump Standards-Version to 3.8.3, with no changes required.
* Clean up the rules file a bit and add some lintian overrides.
* Explain why openttd is in contrib (Closes: #539381).
* Add the DM-Upload-Allowed control field.
* Re-add dpatch infrastructure.
* Fix the copyright file, since upstream only allows GPLv2, not later
versions.
* Add a section to the copyright file on the different license used by the
"Squirrel" programming language, which is shipped with OpenTTD since
0.7.0.
* Backport upstream r17226, which removes the deprecated Encoding entry from
the .desktop file.
* Add a wrapper script for openttd, which captures any stderr output and
displays it when openttd returns an error code (Closes: #533557).
* Recommend x11-utils, since we use xmessage for displaying errors. Don't
depend on it, since openttd will still run fine without it, you just won't
see any errors.
* Backport upstream r17227 and r17229, which prevents terminal escape codes
from ending up in the captured error output.
* Backport upstream r17240, which improves stderr output when files are
missing or corrupt.
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 24 Dec 2009 01:02:03 +0100
-- Jordi Mallach <jordi@debian.org> Fri, 21 Aug 2009 15:27:26 +0200
openttd (1.0.0~beta2) unstable; urgency=low
openttd (0.7.1-1) unstable; urgency=low
[ Matthijs Kooijman ]
* New upstream release.
* Link against libicu to enable right-to-left language support.
-- Matthijs Kooijman <matthijs@stdin.nl> Tue, 05 Jan 2010 21:36:51 +0100
-- Jordi Mallach <jordi@debian.org> Tue, 09 Jun 2009 21:46:28 +0200
openttd (0.7.0-1) unstable; urgency=low
openttd (1.0.0~beta1) unstable; urgency=low
[ Matthijs Kooijman ]
* New upstream release.
* Remove Debian specific desktop file, upstream provides one now.
* Add debian/watch file.
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 24 Dec 2009 01:01:01 +0100
[ Jordi Mallach ]
* Bump Standards-Version to 3.8.1, with no changes required.
* Move to debhelper compat 7. Bump Build-Depends accordingly.
* Use dh_prep.
* Add "set -e" to config script.
* Remove a few extra doc files that get installed by upstream Makefile.
* Add more complete copyright information.
openttd (0.7.5) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Wed, 23 Dec 2009 20:52:34 +0100
openttd (0.7.5~RC1) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Mon, 14 Dec 2009 19:28:37 +0100
openttd (0.7.4) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Tue, 01 Dec 2009 01:23:45 +0100
openttd (0.7.4~RC1) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 15 Nov 2009 16:30:07 +0100
openttd (0.7.3) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 01 Oct 2009 12:35:47 +0200
openttd (0.7.3~RC2) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 24 Sep 2009 21:30:43 +0200
openttd (0.7.3~RC1) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Sun, 13 Sep 2009 10:25:56 +0200
openttd (0.7.2) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Sat, 01 Aug 2009 00:19:43 +0200
openttd (0.7.2~RC2) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Tue, 21 Jul 2009 20:25:56 +0200
openttd (0.7.2~RC1) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Wed, 15 Jul 2009 22:25:56 +0200
openttd (0.7.1) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Tue, 09 Jun 2009 01:34:56 +0200
openttd (0.7.1~RC3) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Wed, 03 Jun 2009 15:34:56 +0200
openttd (0.7.1~RC2) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Thu, 21 Mar 2009 14:34:56 +0200
openttd (0.7.1~RC1) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Mon, 11 Mar 2009 17:34:56 +0200
openttd (0.7.0) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Wed, 01 Apr 2009 13:37:42 +0000
openttd (0.7.0~RC2) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Mon, 23 Mar 2009 00:42:00 +0200
openttd (0.7.0~RC1) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Mon, 16 Mar 2009 00:07:00 +0200
openttd (0.7.0~beta2) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Tue, 10 Mar 2009 00:33:05 +0100
openttd (0.7.0~beta1) unstable; urgency=low
* New upstream release.
-- Matthijs Kooijman <matthijs@stdin.nl> Mon, 16 Feb 2009 23:07:05 +0100
-- Jordi Mallach <jordi@debian.org> Wed, 15 Apr 2009 18:22:10 +0200
openttd (0.6.3-1) unstable; urgency=low
@@ -139,7 +175,7 @@ openttd (0.6.3-1) unstable; urgency=low
[ Jordi Mallach ]
* Add Spanish Debconf template translation, after fixing its corrupted
encoding.
encoding (thanks, Germana Oliveira, closes: #499214).
-- Jordi Mallach <jordi@debian.org> Thu, 02 Oct 2008 16:59:03 +0200

View File

@@ -1 +1 @@
4
7

View File

@@ -1,21 +0,0 @@
#!/bin/sh
# Source debconf library.
. /usr/share/debconf/confmodule
FILES="trg1r.grf trgcr.grf trghr.grf trgir.grf trgtr.grf sample.cat"
DATADIR=/usr/share/games/openttd/data
MISSING="No"
for FILE in $FILES; do
# Check if all the files needed are here.
if [ ! -e $DATADIR/$FILE ]; then
MISSING="Yes"
break
fi;
done
if [ $MISSING = "Yes" ]; then
db_input high openttd/datafiles || true
db_go
fi

View File

@@ -1,21 +1,27 @@
Source: openttd
Section: contrib/games
Section: games
Priority: optional
Maintainer: Matthijs Kooijman <matthijs@stdin.nl>
Uploaders: Jordi Mallach <jordi@debian.org>
Build-Depends: debhelper (>= 4.0.0), libsdl-dev, zlib1g-dev, libpng-dev, libfreetype6-dev, libfontconfig-dev
Standards-Version: 3.7.3
Vcs-Browser: http://svn.debian.org/wsvn/collab-maint/deb-maint/openttd/trunk/
Vcs-Svn: svn://svn.debian.org/svn/collab-maint/deb-maint/openttd/trunk
DM-Upload-Allowed: yes
Build-Depends: debhelper (>= 7.0.50), libsdl-dev, zlib1g-dev, libpng-dev, libfreetype6-dev, libfontconfig-dev, libicu-dev, liblzo2-dev
Standards-Version: 3.8.4
Vcs-Browser: http://git.debian.org/?p=collab-maint/openttd.git
Vcs-Git: git://git.debian.org/collab-maint/openttd.git
Homepage: http://www.openttd.org/
Package: openttd
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Suggests: timidity, freepats
Recommends: openttd-opengfx, x11-utils
Replaces: openttd-data
Conflicts: openttd-data
Suggests: openttd-opensfx, timidity, freepats
Description: reimplementation of Transport Tycoon Deluxe with enhancements
OpenTTD is a reimplementation of the Microprose game "Transport
Tycoon Deluxe" with lots of new features and enhancements. The data
files of the original Transport Tycoon Deluxe for Windows are
mandatory to play the game. They must be manually copied to the game
data directory (see README.Debian for details).
Tycoon Deluxe" with lots of new features and enhancements.
.
OpenTTD is playable with the free graphics files from the openttd-opengfx
package and optional sound files from the openttd-opensfx package (which is in
non-free). Alternatively, OpenTTD can use the graphics files from the original
Transport Tycoon Deluxe game (See README.Debian on how to set this up).

View File

@@ -1,25 +1,77 @@
This package was debianized by Matthijs Kooijman <m.kooijman@student.utwente.nl>
This package was debianized by Matthijs Kooijman <matthijs@stdin.nl>
on Wed, 15 Sep 2004 00:24:01 +0200.
It was downloaded from http://sourceforge.net/projects/openttd
Upstream author: Ludvig Strigeus (ludde) and many others.
Upstream homepage: http://www.openttd.org
License:
Copyright © 2004-2009 Ludvig Strigeous and others.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
OpenTTD License:
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License version 2.0 as
published by the Free Software Foundation;
You should have received a copy of the GNU General Public License
along with this package; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
On Debian systems, the complete text of the GNU General
Public License can be found in `/usr/share/common-licenses/GPL'.
You should have received a copy of the GNU General Public License
along with this package; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
On Debian systems, the complete text of the GNU General Public License
version 2 can be found in `/usr/share/common-licenses/GPL-2'.
This package contains an embedded version of the "Squirrel" programming
language, which is shipped under the following license:
Copyright (c) 2003-2009 Alberto Demichelis
This software is provided 'as-is', without any
express or implied warranty. In no event will the
authors be held liable for any damages arising from
the use of this software.
Permission is granted to anyone to use this software
for any purpose, including commercial applications,
and to alter it and redistribute it freely, subject
to the following restrictions:
1. The origin of this software must not be
misrepresented; you must not claim that
you wrote the original software. If you
use this software in a product, an
acknowledgment in the product
documentation would be appreciated but is
not required.
2. Altered source versions must be plainly
marked as such, and must not be
misrepresented as being the original
software.
3. This notice may not be removed or
altered from any source distribution.
This package contains an implementation of the md5 hash algorithm, which
is shipped under the following license:
Copyright (C) 1999, 2000, 2002 Aladdin Enterprises. All rights reserved.
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.

View File

@@ -1,2 +0,0 @@
readme.txt
docs/multiplayer.txt

13
os/debian/gbp.conf Normal file
View File

@@ -0,0 +1,13 @@
[DEFAULT]
# Use pristine-tar
pristine-tar = True
[git-dch]
# We use metaheaders in commit messages.
meta = True
# Put git commit ids in the debian changelog.
id-length = 7
[git-import-orig]
# Use a custom commit message for upstream imports.
import-msg = New upstream release %(version)s.

View File

@@ -1,2 +1,2 @@
?package(openttd):needs="X11" section="Games/Simulation" title="OpenTTD"\
command="/usr/games/openttd" icon="/usr/share/pixmaps/openttd.32.xpm"
command="/usr/share/games/openttd/openttd-wrapper" icon="/usr/share/pixmaps/openttd.32.xpm"

28
os/debian/openttd-wrapper Normal file
View File

@@ -0,0 +1,28 @@
#!/bin/sh
# This is a wrapper script that checks openttd's exit status and
# displays its stderr output
# Get a file to capture stderr to. Use the deprecated -t option, so this
# works on the old mktemp from the mktemp package (which has been
# replaced by the version from the coreutils package).
TMPFILE=`mktemp -t openttd.errout.XXXXXXXXX`
if [ ! -w "$TMPFILE" ]; then
xmessage "Could not create temporary file for error messages. Not starting OpenTTD."
exit 1;
fi
# Capture stderr
openttd "$@" 2> "$TMPFILE"
ERRCODE=$?
if [ "$ERRCODE" -ne 0 ]; then
CODEMSG="OpenTTD returned with error code $ERRCODE."
if [ -s "$TMPFILE" ]; then
MESSAGE="$CODEMSG The following error messages were produced:\n\n"
printf "$MESSAGE" | cat - "$TMPFILE" | fold -s | xmessage -file -
else
xmessage "$CODEMSG No error messages were produced."
fi
fi
rm -f "$TMPFILE"

View File

@@ -0,0 +1,19 @@
From: Matthijs Kooijman <matthijs@stdin.nl>
Subject: Use a wrapper script for running openttd
The wrapper script captures stderr from openttd and displays this in
case of an error. This patch makes the the .desktop file call the
wrapper instead of the openttd binary directly.
Index: media/openttd.desktop.in
===================================================================
--- a/media/openttd.desktop.in (revision 17228)
+++ b/media/openttd.desktop.in (working copy)
@@ -6,6 +6,6 @@
Name=!!MENU_NAME!!
Comment=A clone of Transport Tycoon Deluxe
Icon=openttd
-Exec=!!TTD!!
+Exec=/usr/share/games/openttd/openttd-wrapper
Terminal=false
Categories=!!MENU_GROUP!!

1
os/debian/patches/series Normal file
View File

@@ -0,0 +1 @@
run-openttd-wrapper.patch

View File

@@ -1 +0,0 @@
[type: gettext/rfc822deb] templates

View File

@@ -1,40 +0,0 @@
# Catalan translation of openttd's Debconf templates.
# Copyright © 2007 Software in the Public Interest, Inc.
# This file is distributed under the same license as the openttd package.
# Jordi Mallach <jordi@debian.org>, 2007.
#
msgid ""
msgstr ""
"Project-Id-Version: openttd 0.5.2-1\n"
"Report-Msgid-Bugs-To: m.kooijman@student.utwente.nl\n"
"POT-Creation-Date: 2007-05-08 09:39+0200\n"
"PO-Revision-Date: 2007-06-01 00:45+0200\n"
"Last-Translator: Jordi Mallach <jordi@debian.org>\n"
"Language-Team: Catalan <debian-l10n-catalan@lists.debian.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Type: error
#. Description
#: ../templates:2001
msgid "Data files needed"
msgstr "Es necessiten els fitxers de dades"
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"For its operation, OpenTTD needs the data files from the original Transport "
"Tycoon Deluxe game."
msgstr ""
"Per a funcionar, OpenTTD necessita els fitxers de dades del joc "
"Transport Tycoon Deluxe original."
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"See the /usr/share/doc/openttd/README.Debian file for more details about the "
"needed files and their location."
msgstr "Vegeu el fitxer /usr/share/doc/openttd/README.Debian per a obtenir-ne més detalls sobre els fitxers necessaris i la seua ubicació."

View File

@@ -1,42 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: openttd\n"
"Report-Msgid-Bugs-To: m.kooijman@student.utwente.nl\n"
"POT-Creation-Date: 2007-05-08 09:39+0200\n"
"PO-Revision-Date: 2007-05-08 10:52+0200\n"
"Last-Translator: Miroslav Kure <kurem@debian.cz>\n"
"Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Type: error
#. Description
#: ../templates:2001
msgid "Data files needed"
msgstr "Vyžadovány datové soubory"
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"For its operation, OpenTTD needs the data files from the original Transport "
"Tycoon Deluxe game."
msgstr ""
"Pro svůj běh vyžaduje OpenTTD datové soubory z původní hry Transport Tycoon "
"Deluxe."
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"See the /usr/share/doc/openttd/README.Debian file for more details about the "
"needed files and their location."
msgstr ""
"Podrobnosti o vyžadovaných souborech a jejich umístění naleznete v souboru /"
"usr/share/doc/openttd/README.Debian."

View File

@@ -1,55 +0,0 @@
# Translation of openttd debconf templates to German
# Copyright (C) Helge Kreutzmann <debian@helgefjell.de>, 2007.
# This file is distributed under the same license as the openttd package.
#
msgid ""
msgstr ""
"Project-Id-Version: openttd 0.5.0-2\n"
"Report-Msgid-Bugs-To: m.kooijman@student.utwente.nl\n"
"POT-Creation-Date: 2007-05-08 09:39+0200\n"
"PO-Revision-Date: 2007-05-08 21:21+0200\n"
"Last-Translator: Helge Kreutzmann <debian@helgefjell.de>\n"
"Language-Team: German <debian-l10n-german@lists.debian.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-15\n"
"Content-Transfer-Encoding: 8bit\n"
#. Type: error
#. Description
#: ../templates:2001
msgid "Data files needed"
msgstr "Ben<65>tigte Datendateien"
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"For its operation, OpenTTD needs the data files from the original Transport "
"Tycoon Deluxe game."
msgstr ""
"Zum Betrieb ben<65>tigt OpenTTD Datendateien aus dem Originalspiel Transport "
"Tycoon Deluxe."
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"See the /usr/share/doc/openttd/README.Debian file for more details about the "
"needed files and their location."
msgstr ""
"Lesen Sie die Datei /usr/share/doc/openttd/README.Debian f<>r weitere Details "
"<22>ber die ben<65>tigten Dateien und ihren Ort."
#~ msgid "You need to install data files"
#~ msgstr "Sie m<>ssen Daten-Dateien installieren"
#~ msgid ""
#~ "OpenTTD needs the data files from the original Transport Tycoon Deluxe "
#~ "game to run. You should install these data files before you can play the "
#~ "game. See README.Debian for more details on which files need to be copied "
#~ "where."
#~ msgstr ""
#~ "OpenTTD ben<65>tigt zur Ausf<73>hrung Daten-Dateien aus dem Originalspiel "
#~ "<22>Transport Tycoon Deluxe<78>. Sie sollten diese Daten-Dateien installieren, "
#~ "bevor Sie das Spiel spielen k<>nnen. Lesen Sie README.Debian f<>r weitere "
#~ "Details dar<61>ber, welche Dateien wohin kopiert werden m<>ssen."

View File

@@ -1,42 +0,0 @@
# OpenTTD debconf template basque translation
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# Piarres eobide <pi@beobide.net>, 2007.
#
msgid ""
msgstr ""
"Project-Id-Version: OpenTTD Debconf\n"
"Report-Msgid-Bugs-To: m.kooijman@student.utwente.nl\n"
"POT-Creation-Date: 2007-05-08 09:39+0200\n"
"PO-Revision-Date: 2007-05-08 09:55+0200\n"
"Last-Translator: Piarres eobide <pi@beobide.net>\n"
"Language-Team: Euskara <Librezale@librezale.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Type: error
#. Description
#: ../templates:2001
msgid "Data files needed"
msgstr "Datu fitxategiak behar dira"
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"For its operation, OpenTTD needs the data files from the original Transport "
"Tycoon Deluxe game."
msgstr ""
"Funtziona dezan, OpenTTD-ek jatorrizko 'Transport Tycoon Deluxe' jokoaren "
"datu fitxategiak behar ditu."
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"See the /usr/share/doc/openttd/README.Debian file for more details about the "
"needed files and their location."
msgstr ""
"/usr/share/doc/openttd/README.Debian fitxategia begiratu beharrezko "
"fitategien eta bere kokapenari buruz xehetasun gehiago ikusteko."

View File

@@ -1,32 +0,0 @@
msgid ""
msgstr ""
"Project-Id-Version: openttd_0.5.3-1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-09-19 04:33+0200\n"
"PO-Revision-Date: 2007-12-18 20:01+0200\n"
"Last-Translator: Esko Arajärvi <edu@iki.fi>\n"
"Language-Team: Finnish <debian-l10n-finnish@lists.debian.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: Finnish\n"
"X-Poedit-Country: Finland\n"
#. Type: error
#. Description
#: ../templates:1001
msgid "Data files needed"
msgstr "Datatiedostoja puuttuu"
#. Type: error
#. Description
#: ../templates:1001
msgid "For its operation, OpenTTD needs the data files from the original Transport Tycoon Deluxe game."
msgstr "OpenTTD tarvitsee toimiakseen datatiedostoja alkuperäisestä Transport Tycoon Deluxe -pelistä."
#. Type: error
#. Description
#: ../templates:1001
msgid "See the /usr/share/doc/openttd/README.Debian file for more details about the needed files and their location."
msgstr "Tiedostossa /usr/share/doc/openttd/README.Debian on (englanniksi) lisätietoja tarvittavista tiedostoista ja niiden sijainnista."

View File

@@ -1,42 +0,0 @@
# debian-l10n-french translation of 0.5.1-1.
# Copyright (C) 2007 THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# Ivan Buresi <err747@free.fr>, 2007.
#
msgid ""
msgstr ""
"Project-Id-Version: 0.5.1-1\n"
"Report-Msgid-Bugs-To: m.kooijman@student.utwente.nl\n"
"POT-Creation-Date: 2007-05-08 09:39+0200\n"
"PO-Revision-Date: 2007-05-08 11:41+0200\n"
"Last-Translator: Ivan Buresi <err747@free.fr>\n"
"Language-Team: debian-l10n-french <debian-l10n-french@lists.debian.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Type: error
#. Description
#: ../templates:2001
msgid "Data files needed"
msgstr "Fichiers de données indispensables"
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"For its operation, OpenTTD needs the data files from the original Transport "
"Tycoon Deluxe game."
msgstr ""
"Pour fonctionner correctement, OpenTTD a besoin des fichiers de données du "
"jeu « Transport Tycoon Deluxe » original."
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"See the /usr/share/doc/openttd/README.Debian file for more details about the "
"needed files and their location."
msgstr ""
"Veuillez lire le fichier /usr/share/doc/openttd/README.Debian pour plus "
"d'informations sur les fichiers requis et leur emplacement."

View File

@@ -1,41 +0,0 @@
# Galician translation of openttd's debconf templates
# This file is distributed under the same license as the openttd package.
# Jacobo Tarrio <jtarrio@debian.org>, 2007.
#
msgid ""
msgstr ""
"Project-Id-Version: openttd\n"
"Report-Msgid-Bugs-To: m.kooijman@student.utwente.nl\n"
"POT-Creation-Date: 2007-05-08 09:39+0200\n"
"PO-Revision-Date: 2007-05-08 13:12+0200\n"
"Last-Translator: Jacobo Tarrio <jtarrio@debian.org>\n"
"Language-Team: Galician <proxecto@trasno.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Type: error
#. Description
#: ../templates:2001
msgid "Data files needed"
msgstr "Precísase de ficheiros de datos"
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"For its operation, OpenTTD needs the data files from the original Transport "
"Tycoon Deluxe game."
msgstr ""
"Para o seu funcionamento, OpenTTD precisa dos ficheiros de datos do xogo "
"Transport Tycoon Deluxe orixinal."
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"See the /usr/share/doc/openttd/README.Debian file for more details about the "
"needed files and their location."
msgstr ""
"Consulte o ficheiro /usr/share/doc/openttd/README.Debian para máis "
"información sobre os ficheiros necesarios e as súas ubicacións."

View File

@@ -1,43 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: openttd\n"
"Report-Msgid-Bugs-To: m.kooijman@student.utwente.nl\n"
"POT-Creation-Date: 2007-05-08 09:39+0200\n"
"PO-Revision-Date: 2007-05-16 19:25+0100\n"
"Last-Translator: Bart Cornelis <cobaco@skolelinux.no>\n"
"Language-Team: debian-l10n-dutch <debian-l10n-dutch@lists.debian.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Poedit-Language: Dutch\n"
#. Type: error
#. Description
#: ../templates:2001
msgid "Data files needed"
msgstr "Databestanden zijn vereist"
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"For its operation, OpenTTD needs the data files from the original Transport "
"Tycoon Deluxe game."
msgstr ""
"Om te werken heeft OpenTTD de databestanden van het oorspronkelijkee "
"'Transport Tycoon Deluxe'-spel nodig."
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"See the /usr/share/doc/openttd/README.Debian file for more details about the "
"needed files and their location."
msgstr ""
"Meer informatie over de vereiste bestanden en hun locatie vindt u in /usr/"
"share/doc/openttd/README.Debian . "

View File

@@ -1,42 +0,0 @@
# Portuguese translation of openttd's debconf messages.
# Copyright (C) 2007
# This file is distributed under the same license as the openttd package.
# Ricardo Silva <ardoric@gmail.com>, 2007
#
msgid ""
msgstr ""
"Project-Id-Version: openttd\n"
"Report-Msgid-Bugs-To: m.kooijman@student.utwente.nl\n"
"POT-Creation-Date: 2007-05-08 09:39+0200\n"
"PO-Revision-Date: 2007-05-09 09:37+0100\n"
"Last-Translator: Ricardo Silva <ardoric@gmail.com>\n"
"Language-Team: Portuguese <traduz@debianpt.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Type: error
#. Description
#: ../templates:2001
msgid "Data files needed"
msgstr "São necessários ficheiros de dados"
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"For its operation, OpenTTD needs the data files from the original Transport "
"Tycoon Deluxe game."
msgstr ""
"Para esta operação o OpenTTD precisa dos ficheiros de dados do jogo original "
"Transport Tycool Deluxe."
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"See the /usr/share/doc/openttd/README.Debian file for more details about the "
"needed files and their location."
msgstr ""
"Veja o ficheiro /usr/share/doc/openttd/README.Debian para mais detalhes "
"sobre os ficheiros que são necessários e a sua localização."

View File

@@ -1,43 +0,0 @@
# openttd Brazilian Portuguese translation
# Copyright (C) 2007, Eder L. Marques
# This file is distributed under the same license as the openttd package.
# Eder L. Marques <frolic@debian-ce.org>, 2007.
#
msgid ""
msgstr ""
"Project-Id-Version: openttd 0.5.0-2\n"
"Report-Msgid-Bugs-To: m.kooijman@student.utwente.nl\n"
"POT-Creation-Date: 2007-05-08 09:39+0200\n"
"PO-Revision-Date: 2007-05-08 11:00-0300\n"
"Last-Translator: Eder L. Marques <frolic@debian-ce.org>\n"
"Language-Team: l10n Portuguese <debian-l10n-portuguese@lists.debian.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"pt_BR utf-8\n"
#. Type: error
#. Description
#: ../templates:2001
msgid "Data files needed"
msgstr "Arquivos de dados necessários"
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"For its operation, OpenTTD needs the data files from the original Transport "
"Tycoon Deluxe game."
msgstr ""
"Para sua operação, o OpenTTD necessita dos arquivos de dados do jogo "
"Transport Tycoon Deluxe original."
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"See the /usr/share/doc/openttd/README.Debian file for more details about the "
"needed files and their location."
msgstr ""
"Veja o arquivo /usr/share/doc/openttd/README.Debian para maiores detalhes "
"sobre os arquivos necessários e suas localizações."

View File

@@ -1,45 +0,0 @@
# translation of openttd_debconf_ru.po to Russian
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
#
# Yuri Kozlov <kozlov.y@gmail.com>, 2007.
msgid ""
msgstr ""
"Project-Id-Version: 0.5.1-1\n"
"Report-Msgid-Bugs-To: m.kooijman@student.utwente.nl\n"
"POT-Creation-Date: 2007-05-08 09:39+0200\n"
"PO-Revision-Date: 2007-05-10 21:45+0400\n"
"Last-Translator: Yuri Kozlov <kozlov.y@gmail.com>\n"
"Language-Team: Russian <debian-l10n-russian@lists.debian.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.4\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
#. Type: error
#. Description
#: ../templates:2001
msgid "Data files needed"
msgstr "Необходимы файлы данных"
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"For its operation, OpenTTD needs the data files from the original Transport "
"Tycoon Deluxe game."
msgstr ""
"Для работы OpenTTD требуются файлы данных от оригинальной игры Transport "
"Tycoon Deluxe."
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"See the /usr/share/doc/openttd/README.Debian file for more details about the "
"needed files and their location."
msgstr ""
"В файле /usr/share/doc/openttd/README.Debian приведена информация о том, "
"какие файлы нужны и где они лежат."

View File

@@ -1,56 +0,0 @@
# Swedish translation for openttd debconf template.
# Copyright (C) 2007 Free Software Foundation, Inc.
# This file is distributed under the same license as the openttd package.
# Daniel Nylander <po@danielnylander.se>, 2007.
#
msgid ""
msgstr ""
"Project-Id-Version: openttd\n"
"Report-Msgid-Bugs-To: m.kooijman@student.utwente.nl\n"
"POT-Creation-Date: 2007-05-08 09:39+0200\n"
"PO-Revision-Date: 2007-05-08 09:47+0100\n"
"Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
"Language-Team: Swedish <debian-l10n-swedish@lists.debian.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. Type: error
#. Description
#: ../templates:2001
msgid "Data files needed"
msgstr "Datafiler behövs"
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"For its operation, OpenTTD needs the data files from the original Transport "
"Tycoon Deluxe game."
msgstr ""
"För att fungera behöva OpenTTD datafilerna från det ursprungliga spelet "
"Transport Tycoon Deluxe."
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"See the /usr/share/doc/openttd/README.Debian file for more details about the "
"needed files and their location."
msgstr ""
"Se filen /usr/share/doc/openttd/README.Debian för mer information om de "
"nödvändiga filera och var de finns någonstans."
#~ msgid "You need to install data files"
#~ msgstr "Du behöver installera datafilerna"
#~ msgid ""
#~ "OpenTTD needs the data files from the original Transport Tycoon Deluxe "
#~ "game to run. You should install these data files before you can play the "
#~ "game. See README.Debian for more details on which files need to be copied "
#~ "where."
#~ msgstr ""
#~ "OpenTTD behöver datafilerna från det ursprungliga spelet Transport Tycoon "
#~ "Deluxe för att kunna köras. Du måste installera dessa datafiler innan du "
#~ "kan spela spelet. Se README.Debian för fler detaljer om vilka filer som "
#~ "behöver kopieras."

View File

@@ -1,43 +0,0 @@
# translation of openttd.po to TAMIL
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
#
# Dr.T.Vasudevan <agnihot3@gmail.com>, 2007.
msgid ""
msgstr ""
"Project-Id-Version: openttd\n"
"Report-Msgid-Bugs-To: m.kooijman@student.utwente.nl\n"
"POT-Creation-Date: 2007-05-08 09:39+0200\n"
"PO-Revision-Date: 2007-05-08 15:04+0530\n"
"Last-Translator: Dr.T.Vasudevan <agnihot3@gmail.com>\n"
"Language-Team: TAMIL <ubuntu-l10n-tam@lists.ubuntu.com>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.4\n"
#. Type: error
#. Description
#: ../templates:2001
msgid "Data files needed"
msgstr "தேவையான தரவு கோப்புகள்"
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"For its operation, OpenTTD needs the data files from the original Transport "
"Tycoon Deluxe game."
msgstr ""
"இயங்குவதற்கு ஓபன் டிடிடி(OpenTTD) க்கு ட்ரான்ஸ்போர்ட் டைகூன் டீலக்ஸ் விளையாட்டிலிருந்து "
"தரவு கோப்புகள் தேவை."
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"See the /usr/share/doc/openttd/README.Debian file for more details about the "
"needed files and their location."
msgstr ""
"தேவையான கோப்புகள் அவற்றின் இடம் ஆகியவற்றை அறிய /usr/share/doc/openttd/README "
"டெபியன் கோப்பை பார்க்கவும்."

View File

@@ -1,39 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: m.kooijman@student.utwente.nl\n"
"POT-Creation-Date: 2007-05-08 09:39+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#. Type: error
#. Description
#: ../templates:2001
msgid "Data files needed"
msgstr ""
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"For its operation, OpenTTD needs the data files from the original Transport "
"Tycoon Deluxe game."
msgstr ""
#. Type: error
#. Description
#: ../templates:2001
msgid ""
"See the /usr/share/doc/openttd/README.Debian file for more details about the "
"needed files and their location."
msgstr ""

View File

@@ -1,8 +0,0 @@
#! /bin/sh
set -e
. /usr/share/debconf/confmodule
#DEBHELPER#

View File

@@ -1,88 +1,43 @@
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# GNU copyright 1997 to 1999 by Joey Hess.
# Makefile to build the openttd debian package.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
# Use debhelper default for all targets (but some are overridden below).
%:
dh $@
configure: configure-stamp
configure-stamp:
dh_testdir
# Add here commands to configure the package.
DEB_HOST_GNU_TYPE=$(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE=$(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE))
CROSS= --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE)
endif
touch configure-stamp
# Pass custom options to configure. Since it's not autoconf but a custom
# script, some of the option names are slightly different. We also need
# to be explicit about the dependencies, in case we're not running in a
# clean build root.
override_dh_auto_configure:
./configure $(CROSS) --prefix-dir=/usr --install-dir=debian/openttd --without-allegro --with-zlib --with-sdl --with-png --with-freetype --with-fontconfig --with-icu --with-liblzo2 --without-iconv
build: configure build-stamp
build-stamp:
dh_testdir
# Add here commands to compile the package.
./configure --prefix-dir=/usr --binary-dir=games --data-dir=share/games/openttd --icon-dir=share/pixmaps --personal-dir=.openttd --install-dir=debian/openttd
$(MAKE)
#/usr/bin/docbook-to-man debian/openttd.sgml > openttd.1
touch build-stamp
clean:
dh_testdir
dh_testroot
rm -f build-stamp configure-stamp
# Add here commands to clean up after the build process.
# We check for Makefile presence, because clean is called at the
# start of the build process (before configure) where we don't
# have a Makefile yet.
[ ! -f Makefile ] || $(MAKE) mrproper
dh_clean
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
# Add here commands to install the package into debian/openttd.
# Do some extra installation
override_dh_auto_install:
$(MAKE) install
# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.
# Install the wrapper and make it executable
install -d debian/openttd/usr/share/games/openttd/
install -m755 debian/openttd-wrapper debian/openttd/usr/share/games/openttd/
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir
dh_testroot
dh_installchangelogs changelog.txt
dh_installdocs
dh_installexamples
# dh_install
dh_installmenu
dh_installdebconf
# dh_installlogrotate
# dh_installemacsen
# dh_installpam
# dh_installmime
# dh_installinit
# dh_installcron
# dh_installinfo
dh_installman docs/openttd.6
dh_link
dh_strip
dh_compress
dh_fixperms
# dh_perl
# dh_python
# dh_makeshlibs
dh_installdeb
dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb
# Since 0.7.0, upstream Makefile installs some unwanted stuff.
-rm $(CURDIR)/debian/openttd/usr/share/doc/openttd/COPYING
-rm $(CURDIR)/debian/openttd/usr/share/doc/openttd/changelog.txt
-rm $(CURDIR)/debian/openttd/usr/share/doc/openttd/ob*_format.txt
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install configure
# Don't do testing. Because the OpenTTD Makefile always does dependency
# generation (even on invalid targets), dh_auto_test thinks there is a
# "test" target, while there isn't.
override_dh_auto_test:
# Call mrproper. Again, dh_auto_clean thinks there is a distclean
# target, while there isn't.
override_dh_auto_clean:
[ ! -f Makefile ] || $(MAKE) mrproper

1
os/debian/source/format Normal file
View File

@@ -0,0 +1 @@
3.0 (quilt)

View File

@@ -1,16 +0,0 @@
# These templates have been reviewed by the debian-l10n-english
# team
#
# If modifications/additions/rewording are needed, please ask
# for an advice to debian-l10n-english@lists.debian.org
#
# Even minor modifications require translation updates and such
# changes should be coordinated with translators and reviewers.
Template: openttd/datafiles
Type: error
_Description: Data files needed
For its operation, OpenTTD needs the data files from the original
Transport Tycoon Deluxe game.
.
See the /usr/share/doc/openttd/README.Debian file for more details
about the needed files and their location.

5
os/debian/watch Normal file
View File

@@ -0,0 +1,5 @@
version=3
options=downloadurlmangle=s/(.*)\/index.html$/\1\/openttd-\1-source.tar.gz/ \
http://master.binaries.openttd.org/releases/ \
(\d+(?:\.\d+)*)/index.html

View File

@@ -1,6 +1,6 @@
@echo off
set OPENTTD_VERSION=1.0.0-beta2
set OPENTTD_VERSION=1.0.0
set OPENSFX_VERSION=0.8.0
set NOSOUND_VERSION=0.8.0
set OPENGFX_VERSION=0.7.0

View File

@@ -1,9 +1,9 @@
# Version numbers to update
!define APPV_MAJOR 1
!define APPV_MINOR 0
!define APPV_MAINT 0
!define APPV_MAINT 1
!define APPV_BUILD 1
!define APPV_EXTRA "-beta2"
!define APPV_EXTRA "-RC2"
!define APPNAME "OpenTTD" ; Define application name
!define APPVERSION "${APPV_MAJOR}.${APPV_MINOR}.${APPV_MAINT}${APPV_EXTRA}" ; Define application version
@@ -16,7 +16,7 @@
!define OPENGFX_BASE_VERSION "0.7.0"
!define OPENSFX_BASE_VERSION "0.8.0"
!define NOSOUND_BASE_VERSION "0.8.0"
!define OPENMSX_BASE_VERSION "1.0.0"
!define MUI_ICON "..\..\..\media\openttd.ico"
!define MUI_UNICON "..\..\..\media\openttd.ico"
@@ -238,21 +238,21 @@ Done:
SectionEnd
;----------------------------------------------------------------------------------
; NoSound files install section. Downloads NoSound and installs it
Section "Download NoSound (free sound set)" Section5
; OpenMSX files install section. Downloads OpenMSX and installs it
Section "Download OpenMSX (free music set)" Section5
SetOverwrite try
NSISdl::download "http://binaries.openttd.org/installer/nosound-${NOSOUND_BASE_VERSION}.7z" "$INSTDIR\data\nosound.7z"
NSISdl::download "http://binaries.openttd.org/installer/openmsx-${OPENMSX_BASE_VERSION}.7z" "$INSTDIR\gm\openmsx.7z"
Pop $R0 ;Get the return value
StrCmp $R0 "success" +3
MessageBox MB_OK "Downloading of NoSound failed"
MessageBox MB_OK "Downloading of OpenMSX failed"
Goto Done
; Let's extract the files
SetOutPath "$INSTDIR\data\"
NSIS7z::Extract "$INSTDIR\data\nosound.7z"
SetOutPath "$INSTDIR\gm\"
NSIS7z::Extract "$INSTDIR\gm\openmsx.7z"
Delete "$INSTDIR\data\nosound.7z"
Delete "$INSTDIR\gm\openmsx.7z"
SetOutPath "$INSTDIR\"
Done:
@@ -294,8 +294,8 @@ SectionEnd
!insertmacro MUI_DESCRIPTION_TEXT ${Section6} "Translations of OpenTTD."
!insertmacro MUI_DESCRIPTION_TEXT ${Section3} "Download the free OpenGFX game graphics set. This download is about 3 MiB."
!insertmacro MUI_DESCRIPTION_TEXT ${Section4} "Download the free OpenSFX game sound set. This download is about 10 MiB."
!insertmacro MUI_DESCRIPTION_TEXT ${Section5} "Download the free NoSound game sound set. You will not hear anything with this. This download is about 7 KiB."
!insertmacro MUI_DESCRIPTION_TEXT ${Section2} "Copies the game graphics and sounds from the Transport Tycoon Deluxe CD."
!insertmacro MUI_DESCRIPTION_TEXT ${Section5} "Download the free OpenMSX game music set. This download is about 200 KiB."
!insertmacro MUI_DESCRIPTION_TEXT ${Section2} "Copies the game graphics, sounds and music from the Transport Tycoon Deluxe CD."
!insertmacro MUI_FUNCTION_DESCRIPTION_END
;-----------------------------------------------
@@ -377,6 +377,7 @@ Section "Uninstall"
Delete "$INSTDIR\data\orig_dos_de.obg"
Delete "$INSTDIR\data\orig_win.obs"
Delete "$INSTDIR\data\orig_dos.obs"
Delete "$INSTDIR\data\no_sound.obs"
Delete "$INSTDIR\data\sample.cat"
; Windows Data files
@@ -395,13 +396,13 @@ Section "Uninstall"
; Music
Delete "$INSTDIR\gm\*.gm"
; Downloaded OpenGFX/OpenSFX/NoSound
; Downloaded OpenGFX/OpenSFX/OpenMSX
Delete "$INSTDIR\data\opengfx\*"
RMDir "$INSTDIR\data\opengfx"
Delete "$INSTDIR\data\opensfx\*"
RMDir "$INSTDIR\data\opensfx"
Delete "$INSTDIR\data\nosound\*"
RMDir "$INSTDIR\data\nosound"
Delete "$INSTDIR\gm\openmsx\*"
RMDir "$INSTDIR\gm\openmsx"
; Language files
Delete "$INSTDIR\lang\*.lng"
@@ -549,7 +550,7 @@ Function .onInit
SectionSetSize ${Section3} 6144
SectionSetSize ${Section4} 13312
SectionSetSize ${Section5} 30
SectionSetSize ${Section5} 1024
SectionSetFlags 0 17

View File

@@ -39,6 +39,7 @@ Sub UpdateFiles(version)
modified = Mid(version, InStrRev(version, Chr(9)) + 1)
version = Mid(version, 1, InStr(version, Chr(9)) - 1)
Else
version = "1.0.1-RC2"
revision = 0
modified = 1
End If

View File

@@ -40,6 +40,7 @@ sdl_config="1"
png_config="1"
os="MSVC"
enable_dedicated="0"
enable_ai="1"
with_cocoa="0"
enable_directmusic="1"
with_threads="1"
@@ -94,6 +95,7 @@ load_main_data() {
if ($0 == "PSP" && "'$os'" != "PSP") { next; }
if ($0 == "DOS" && "'$os'" != "DOS") { next; }
if ($0 == "DEDICATED" && "'$enable_dedicated'" != "1") { next; }
if ($0 == "AI" && "'$enable_ai'" == "0") { next; }
if ($0 == "COCOA" && "'$with_cocoa'" == "0") { next; }
if ($0 == "BEOS" && "'$os'" != "BEOS") { next; }
if ($0 == "WIN32" && "'$os'" != "MINGW" &&
@@ -159,8 +161,8 @@ load_lang_data() {
<Tool
Name=\"VCCustomBuildTool\"
Description=\"Generating "$i" language file\"
CommandLine=\"..\\objs\\strgen\\strgen.exe -s ..\\src\\lang -d ..\\bin\\lang &quot;\$(InputPath)&quot;&#x0D;&#x0A;\"
AdditionalDependencies=\"..\\src\\lang\\english.txt\"
CommandLine=\"..\\objs\\strgen\\strgen.exe -s ..\\src\\lang -d ..\\bin\\lang &quot;\$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;\"
AdditionalDependencies=\"..\\src\\lang\\english.txt;..\\objs\\strgen\\strgen.exe\"
Outputs=\"..\\bin\\lang\\"$i".lng\"
/>
</FileConfiguration>

View File

@@ -158,6 +158,7 @@ Function load_main_data(filename)
line = "WIN32" Or _
line = "MSVC" Or _
line = "DIRECTMUSIC" Or _
line = "AI" Or _
line = "HAVE_THREAD" _
) Then skip = skip + 1
deep = deep + 1
@@ -209,8 +210,8 @@ Function load_lang_data(dir)
& vbCrLf & " <Tool" _
& vbCrLf & " Name=" & Chr(34) & "VCCustomBuildTool" & Chr(34) _
& vbCrLf & " Description=" & Chr(34) & "Generating " & file & " language file" & Chr(34) _
& vbCrLf & " CommandLine=" & Chr(34) & "..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;" & Chr(34) _
& vbCrLf & " AdditionalDependencies=" & Chr(34) & "..\src\lang\english.txt" & Chr(34) _
& vbCrLf & " CommandLine=" & Chr(34) & "..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;" & Chr(34) _
& vbCrLf & " AdditionalDependencies=" & Chr(34) & "..\src\lang\english.txt;..\objs\strgen\strgen.exe" & Chr(34) _
& vbCrLf & " Outputs=" & Chr(34) & "..\bin\lang\" & file & ".lng" & Chr(34) _
& vbCrLf & " />" _
& vbCrLf & " </FileConfiguration>" _

View File

@@ -55,8 +55,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating afrikaans language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\afrikaans.lng"
/>
</FileConfiguration>
@@ -70,8 +70,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating arabic_egypt language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\arabic_egypt.lng"
/>
</FileConfiguration>
@@ -85,8 +85,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating brazilian_portuguese language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\brazilian_portuguese.lng"
/>
</FileConfiguration>
@@ -100,8 +100,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating bulgarian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\bulgarian.lng"
/>
</FileConfiguration>
@@ -115,8 +115,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating catalan language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\catalan.lng"
/>
</FileConfiguration>
@@ -130,8 +130,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating croatian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\croatian.lng"
/>
</FileConfiguration>
@@ -145,8 +145,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating czech language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\czech.lng"
/>
</FileConfiguration>
@@ -160,8 +160,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating danish language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\danish.lng"
/>
</FileConfiguration>
@@ -175,8 +175,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating dutch language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\dutch.lng"
/>
</FileConfiguration>
@@ -190,8 +190,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating english language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\english.lng"
/>
</FileConfiguration>
@@ -205,8 +205,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating english_US language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\english_US.lng"
/>
</FileConfiguration>
@@ -220,8 +220,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating esperanto language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\esperanto.lng"
/>
</FileConfiguration>
@@ -235,8 +235,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating estonian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\estonian.lng"
/>
</FileConfiguration>
@@ -250,8 +250,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating finnish language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\finnish.lng"
/>
</FileConfiguration>
@@ -265,8 +265,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating french language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\french.lng"
/>
</FileConfiguration>
@@ -280,8 +280,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating galician language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\galician.lng"
/>
</FileConfiguration>
@@ -295,8 +295,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating german language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\german.lng"
/>
</FileConfiguration>
@@ -310,8 +310,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating greek language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\greek.lng"
/>
</FileConfiguration>
@@ -325,8 +325,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating hebrew language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\hebrew.lng"
/>
</FileConfiguration>
@@ -340,8 +340,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating hungarian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\hungarian.lng"
/>
</FileConfiguration>
@@ -355,8 +355,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating icelandic language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\icelandic.lng"
/>
</FileConfiguration>
@@ -370,8 +370,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating indonesian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\indonesian.lng"
/>
</FileConfiguration>
@@ -385,8 +385,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating italian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\italian.lng"
/>
</FileConfiguration>
@@ -400,8 +400,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating japanese language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\japanese.lng"
/>
</FileConfiguration>
@@ -415,8 +415,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating korean language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\korean.lng"
/>
</FileConfiguration>
@@ -430,8 +430,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating latvian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\latvian.lng"
/>
</FileConfiguration>
@@ -445,8 +445,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating lithuanian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\lithuanian.lng"
/>
</FileConfiguration>
@@ -460,12 +460,27 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating luxembourgish language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\luxembourgish.lng"
/>
</FileConfiguration>
</File>
<File
RelativePath="..\src\lang\malay.txt"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating malay language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\malay.lng"
/>
</FileConfiguration>
</File>
<File
RelativePath="..\src\lang\norwegian_bokmal.txt"
>
@@ -475,8 +490,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating norwegian_bokmal language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\norwegian_bokmal.lng"
/>
</FileConfiguration>
@@ -490,8 +505,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating norwegian_nynorsk language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\norwegian_nynorsk.lng"
/>
</FileConfiguration>
@@ -505,8 +520,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating polish language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\polish.lng"
/>
</FileConfiguration>
@@ -520,8 +535,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating portuguese language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\portuguese.lng"
/>
</FileConfiguration>
@@ -535,8 +550,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating romanian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\romanian.lng"
/>
</FileConfiguration>
@@ -550,8 +565,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating russian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\russian.lng"
/>
</FileConfiguration>
@@ -565,8 +580,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating serbian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\serbian.lng"
/>
</FileConfiguration>
@@ -580,8 +595,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating simplified_chinese language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\simplified_chinese.lng"
/>
</FileConfiguration>
@@ -595,8 +610,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating slovak language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\slovak.lng"
/>
</FileConfiguration>
@@ -610,8 +625,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating slovenian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\slovenian.lng"
/>
</FileConfiguration>
@@ -625,8 +640,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating spanish language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\spanish.lng"
/>
</FileConfiguration>
@@ -640,8 +655,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating swedish language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\swedish.lng"
/>
</FileConfiguration>
@@ -655,8 +670,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating traditional_chinese language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\traditional_chinese.lng"
/>
</FileConfiguration>
@@ -670,8 +685,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating turkish language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\turkish.lng"
/>
</FileConfiguration>
@@ -685,12 +700,27 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating ukrainian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\ukrainian.lng"
/>
</FileConfiguration>
</File>
<File
RelativePath="..\src\lang\vietnamese.txt"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating vietnamese language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\vietnamese.lng"
/>
</FileConfiguration>
</File>
<File
RelativePath="..\src\lang\welsh.txt"
>
@@ -700,8 +730,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating welsh language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\welsh.lng"
/>
</FileConfiguration>

View File

@@ -56,8 +56,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating afrikaans language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\afrikaans.lng"
/>
</FileConfiguration>
@@ -71,8 +71,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating arabic_egypt language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\arabic_egypt.lng"
/>
</FileConfiguration>
@@ -86,8 +86,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating brazilian_portuguese language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\brazilian_portuguese.lng"
/>
</FileConfiguration>
@@ -101,8 +101,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating bulgarian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\bulgarian.lng"
/>
</FileConfiguration>
@@ -116,8 +116,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating catalan language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\catalan.lng"
/>
</FileConfiguration>
@@ -131,8 +131,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating croatian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\croatian.lng"
/>
</FileConfiguration>
@@ -146,8 +146,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating czech language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\czech.lng"
/>
</FileConfiguration>
@@ -161,8 +161,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating danish language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\danish.lng"
/>
</FileConfiguration>
@@ -176,8 +176,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating dutch language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\dutch.lng"
/>
</FileConfiguration>
@@ -191,8 +191,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating english language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\english.lng"
/>
</FileConfiguration>
@@ -206,8 +206,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating english_US language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\english_US.lng"
/>
</FileConfiguration>
@@ -221,8 +221,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating esperanto language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\esperanto.lng"
/>
</FileConfiguration>
@@ -236,8 +236,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating estonian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\estonian.lng"
/>
</FileConfiguration>
@@ -251,8 +251,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating finnish language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\finnish.lng"
/>
</FileConfiguration>
@@ -266,8 +266,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating french language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\french.lng"
/>
</FileConfiguration>
@@ -281,8 +281,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating galician language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\galician.lng"
/>
</FileConfiguration>
@@ -296,8 +296,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating german language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\german.lng"
/>
</FileConfiguration>
@@ -311,8 +311,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating greek language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\greek.lng"
/>
</FileConfiguration>
@@ -326,8 +326,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating hebrew language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\hebrew.lng"
/>
</FileConfiguration>
@@ -341,8 +341,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating hungarian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\hungarian.lng"
/>
</FileConfiguration>
@@ -356,8 +356,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating icelandic language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\icelandic.lng"
/>
</FileConfiguration>
@@ -371,8 +371,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating indonesian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\indonesian.lng"
/>
</FileConfiguration>
@@ -386,8 +386,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating italian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\italian.lng"
/>
</FileConfiguration>
@@ -401,8 +401,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating japanese language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\japanese.lng"
/>
</FileConfiguration>
@@ -416,8 +416,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating korean language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\korean.lng"
/>
</FileConfiguration>
@@ -431,8 +431,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating latvian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\latvian.lng"
/>
</FileConfiguration>
@@ -446,8 +446,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating lithuanian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\lithuanian.lng"
/>
</FileConfiguration>
@@ -461,12 +461,27 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating luxembourgish language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\luxembourgish.lng"
/>
</FileConfiguration>
</File>
<File
RelativePath="..\src\lang\malay.txt"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating malay language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\malay.lng"
/>
</FileConfiguration>
</File>
<File
RelativePath="..\src\lang\norwegian_bokmal.txt"
>
@@ -476,8 +491,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating norwegian_bokmal language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\norwegian_bokmal.lng"
/>
</FileConfiguration>
@@ -491,8 +506,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating norwegian_nynorsk language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\norwegian_nynorsk.lng"
/>
</FileConfiguration>
@@ -506,8 +521,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating polish language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\polish.lng"
/>
</FileConfiguration>
@@ -521,8 +536,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating portuguese language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\portuguese.lng"
/>
</FileConfiguration>
@@ -536,8 +551,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating romanian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\romanian.lng"
/>
</FileConfiguration>
@@ -551,8 +566,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating russian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\russian.lng"
/>
</FileConfiguration>
@@ -566,8 +581,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating serbian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\serbian.lng"
/>
</FileConfiguration>
@@ -581,8 +596,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating simplified_chinese language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\simplified_chinese.lng"
/>
</FileConfiguration>
@@ -596,8 +611,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating slovak language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\slovak.lng"
/>
</FileConfiguration>
@@ -611,8 +626,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating slovenian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\slovenian.lng"
/>
</FileConfiguration>
@@ -626,8 +641,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating spanish language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\spanish.lng"
/>
</FileConfiguration>
@@ -641,8 +656,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating swedish language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\swedish.lng"
/>
</FileConfiguration>
@@ -656,8 +671,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating traditional_chinese language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\traditional_chinese.lng"
/>
</FileConfiguration>
@@ -671,8 +686,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating turkish language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\turkish.lng"
/>
</FileConfiguration>
@@ -686,12 +701,27 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating ukrainian language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\ukrainian.lng"
/>
</FileConfiguration>
</File>
<File
RelativePath="..\src\lang\vietnamese.txt"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating vietnamese language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\vietnamese.lng"
/>
</FileConfiguration>
</File>
<File
RelativePath="..\src\lang\welsh.txt"
>
@@ -701,8 +731,8 @@
<Tool
Name="VCCustomBuildTool"
Description="Generating welsh language file"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt"
CommandLine="..\objs\strgen\strgen.exe -s ..\src\lang -d ..\bin\lang &quot;$(InputPath)&quot;&#x0D;&#x0A;exit 0&#x0D;&#x0A;"
AdditionalDependencies="..\src\lang\english.txt;..\objs\strgen\strgen.exe"
Outputs="..\bin\lang\welsh.lng"
/>
</FileConfiguration>

View File

@@ -60,7 +60,7 @@
FavorSizeOrSpeed="2"
OmitFramePointers="true"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;WITH_ASSERT"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;WITH_ASSERT"
StringPooling="true"
ExceptionHandling="1"
RuntimeLibrary="0"
@@ -97,7 +97,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames=""
@@ -169,7 +169,7 @@
AdditionalOptions="/MP"
Optimization="0"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
@@ -197,7 +197,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="0"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="LIBCMT.lib"
@@ -273,7 +273,7 @@
FavorSizeOrSpeed="2"
OmitFramePointers="true"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64;WITH_ASSERT"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64;WITH_ASSERT"
StringPooling="true"
ExceptionHandling="1"
RuntimeLibrary="0"
@@ -310,7 +310,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames=""
@@ -383,7 +383,7 @@
AdditionalOptions="/MP"
Optimization="0"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
@@ -413,7 +413,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="0"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="LIBCMT.lib"
@@ -475,10 +475,6 @@
RelativePath=".\..\src\bmp.cpp"
>
</File>
<File
RelativePath=".\..\src\callback_table.cpp"
>
</File>
<File
RelativePath=".\..\src\cargopacket.cpp"
>
@@ -687,6 +683,10 @@
RelativePath=".\..\src\sound.cpp"
>
</File>
<File
RelativePath=".\..\src\sprite.cpp"
>
</File>
<File
RelativePath=".\..\src\spritecache.cpp"
>
@@ -719,6 +719,10 @@
RelativePath=".\..\src\tile_map.cpp"
>
</File>
<File
RelativePath=".\..\src\tilearea.cpp"
>
</File>
<File
RelativePath=".\..\src\townname.cpp"
>
@@ -759,10 +763,6 @@
RelativePath=".\..\src\airport.h"
>
</File>
<File
RelativePath=".\..\src\airport_movement.h"
>
</File>
<File
RelativePath=".\..\src\animated_tile_func.h"
>
@@ -811,10 +811,6 @@
RelativePath=".\..\src\bridge.h"
>
</File>
<File
RelativePath=".\..\src\callback_table.h"
>
</File>
<File
RelativePath=".\..\src\cargo_type.h"
>
@@ -1027,6 +1023,10 @@
RelativePath=".\..\src\gfxinit.h"
>
</File>
<File
RelativePath=".\..\src\graph_gui.h"
>
</File>
<File
RelativePath=".\..\src\group.h"
>
@@ -1191,6 +1191,10 @@
RelativePath=".\..\src\newgrf_properties.h"
>
</File>
<File
RelativePath=".\..\src\newgrf_railtype.h"
>
</File>
<File
RelativePath=".\..\src\newgrf_sound.h"
>
@@ -1319,6 +1323,10 @@
RelativePath=".\..\src\sdl.h"
>
</File>
<File
RelativePath=".\..\src\smallmap_gui.h"
>
</File>
<File
RelativePath=".\..\src\sound\sdl_s.h"
>
@@ -2179,6 +2187,22 @@
<Filter
Name="Tables"
>
<File
RelativePath=".\..\src\table\airport_defaults.h"
>
</File>
<File
RelativePath=".\..\src\table\airporttile_ids.h"
>
</File>
<File
RelativePath=".\..\src\table\airporttiles.h"
>
</File>
<File
RelativePath=".\..\src\table\airport_movement.h"
>
</File>
<File
RelativePath=".\..\src\table\animcursors.h"
>
@@ -2316,26 +2340,6 @@
>
</File>
</Filter>
<Filter
Name="MiniLZO"
>
<File
RelativePath=".\..\src\3rdparty\minilzo\lzoconf.h"
>
</File>
<File
RelativePath=".\..\src\3rdparty\minilzo\lzodefs.h"
>
</File>
<File
RelativePath=".\..\src\3rdparty\minilzo\minilzo.c"
>
</File>
<File
RelativePath=".\..\src\3rdparty\minilzo\minilzo.h"
>
</File>
</Filter>
<Filter
Name="Script"
>
@@ -3203,6 +3207,10 @@
RelativePath=".\..\src\newgrf_industrytiles.cpp"
>
</File>
<File
RelativePath=".\..\src\newgrf_railtype.cpp"
>
</File>
<File
RelativePath=".\..\src\newgrf_sound.cpp"
>
@@ -3427,6 +3435,14 @@
RelativePath=".\..\src\network\core\tcp_game.h"
>
</File>
<File
RelativePath=".\..\src\network\core\tcp_http.cpp"
>
</File>
<File
RelativePath=".\..\src\network\core\tcp_http.h"
>
</File>
<File
RelativePath=".\..\src\network\core\udp.cpp"
>

View File

@@ -60,7 +60,7 @@
FavorSizeOrSpeed="2"
OmitFramePointers="true"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;WITH_ASSERT"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;WITH_ASSERT"
StringPooling="true"
ExceptionHandling="1"
RuntimeLibrary="0"
@@ -97,7 +97,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames=""
@@ -169,7 +169,7 @@
AdditionalOptions="/MP"
Optimization="0"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
@@ -197,7 +197,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="0"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="LIBCMT.lib"
@@ -273,7 +273,7 @@
FavorSizeOrSpeed="2"
OmitFramePointers="true"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64;WITH_ASSERT"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64;WITH_ASSERT"
StringPooling="true"
ExceptionHandling="1"
RuntimeLibrary="0"
@@ -310,7 +310,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames=""
@@ -383,7 +383,7 @@
AdditionalOptions="/MP"
Optimization="0"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
@@ -413,7 +413,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="0"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="LIBCMT.lib"

View File

@@ -61,7 +61,7 @@
FavorSizeOrSpeed="2"
OmitFramePointers="true"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;WITH_ASSERT"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;WITH_ASSERT"
StringPooling="true"
ExceptionHandling="1"
RuntimeLibrary="0"
@@ -98,7 +98,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames=""
@@ -168,7 +168,7 @@
AdditionalOptions="/MP"
Optimization="0"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
@@ -196,7 +196,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="0"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="LIBCMT.lib"
@@ -271,7 +271,7 @@
FavorSizeOrSpeed="2"
OmitFramePointers="true"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64;WITH_ASSERT"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64;WITH_ASSERT"
StringPooling="true"
ExceptionHandling="1"
RuntimeLibrary="0"
@@ -308,7 +308,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames=""
@@ -380,7 +380,7 @@
AdditionalOptions="/MP"
Optimization="0"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
@@ -410,7 +410,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="0"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="LIBCMT.lib"
@@ -472,10 +472,6 @@
RelativePath=".\..\src\bmp.cpp"
>
</File>
<File
RelativePath=".\..\src\callback_table.cpp"
>
</File>
<File
RelativePath=".\..\src\cargopacket.cpp"
>
@@ -684,6 +680,10 @@
RelativePath=".\..\src\sound.cpp"
>
</File>
<File
RelativePath=".\..\src\sprite.cpp"
>
</File>
<File
RelativePath=".\..\src\spritecache.cpp"
>
@@ -716,6 +716,10 @@
RelativePath=".\..\src\tile_map.cpp"
>
</File>
<File
RelativePath=".\..\src\tilearea.cpp"
>
</File>
<File
RelativePath=".\..\src\townname.cpp"
>
@@ -756,10 +760,6 @@
RelativePath=".\..\src\airport.h"
>
</File>
<File
RelativePath=".\..\src\airport_movement.h"
>
</File>
<File
RelativePath=".\..\src\animated_tile_func.h"
>
@@ -808,10 +808,6 @@
RelativePath=".\..\src\bridge.h"
>
</File>
<File
RelativePath=".\..\src\callback_table.h"
>
</File>
<File
RelativePath=".\..\src\cargo_type.h"
>
@@ -1024,6 +1020,10 @@
RelativePath=".\..\src\gfxinit.h"
>
</File>
<File
RelativePath=".\..\src\graph_gui.h"
>
</File>
<File
RelativePath=".\..\src\group.h"
>
@@ -1188,6 +1188,10 @@
RelativePath=".\..\src\newgrf_properties.h"
>
</File>
<File
RelativePath=".\..\src\newgrf_railtype.h"
>
</File>
<File
RelativePath=".\..\src\newgrf_sound.h"
>
@@ -1316,6 +1320,10 @@
RelativePath=".\..\src\sdl.h"
>
</File>
<File
RelativePath=".\..\src\smallmap_gui.h"
>
</File>
<File
RelativePath=".\..\src\sound\sdl_s.h"
>
@@ -2176,6 +2184,22 @@
<Filter
Name="Tables"
>
<File
RelativePath=".\..\src\table\airport_defaults.h"
>
</File>
<File
RelativePath=".\..\src\table\airporttile_ids.h"
>
</File>
<File
RelativePath=".\..\src\table\airporttiles.h"
>
</File>
<File
RelativePath=".\..\src\table\airport_movement.h"
>
</File>
<File
RelativePath=".\..\src\table\animcursors.h"
>
@@ -2313,26 +2337,6 @@
>
</File>
</Filter>
<Filter
Name="MiniLZO"
>
<File
RelativePath=".\..\src\3rdparty\minilzo\lzoconf.h"
>
</File>
<File
RelativePath=".\..\src\3rdparty\minilzo\lzodefs.h"
>
</File>
<File
RelativePath=".\..\src\3rdparty\minilzo\minilzo.c"
>
</File>
<File
RelativePath=".\..\src\3rdparty\minilzo\minilzo.h"
>
</File>
</Filter>
<Filter
Name="Script"
>
@@ -3200,6 +3204,10 @@
RelativePath=".\..\src\newgrf_industrytiles.cpp"
>
</File>
<File
RelativePath=".\..\src\newgrf_railtype.cpp"
>
</File>
<File
RelativePath=".\..\src\newgrf_sound.cpp"
>
@@ -3424,6 +3432,14 @@
RelativePath=".\..\src\network\core\tcp_game.h"
>
</File>
<File
RelativePath=".\..\src\network\core\tcp_http.cpp"
>
</File>
<File
RelativePath=".\..\src\network\core\tcp_http.h"
>
</File>
<File
RelativePath=".\..\src\network\core\udp.cpp"
>

View File

@@ -61,7 +61,7 @@
FavorSizeOrSpeed="2"
OmitFramePointers="true"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;WITH_ASSERT"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;WITH_ASSERT"
StringPooling="true"
ExceptionHandling="1"
RuntimeLibrary="0"
@@ -98,7 +98,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames=""
@@ -168,7 +168,7 @@
AdditionalOptions="/MP"
Optimization="0"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
@@ -196,7 +196,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="0"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="LIBCMT.lib"
@@ -271,7 +271,7 @@
FavorSizeOrSpeed="2"
OmitFramePointers="true"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64;WITH_ASSERT"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64;WITH_ASSERT"
StringPooling="true"
ExceptionHandling="1"
RuntimeLibrary="0"
@@ -308,7 +308,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="1"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames=""
@@ -380,7 +380,7 @@
AdditionalOptions="/MP"
Optimization="0"
AdditionalIncludeDirectories="..\objs\langs;..\src\3rdparty\squirrel\include"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;WIN32_ENABLE_DIRECTMUSIC_SUPPORT;WITH_ZLIB;WITH_LZO;WITH_PNG;WITH_FREETYPE;WITH_ICU;ENABLE_NETWORK;ENABLE_AI;WITH_PERSONAL_DIR;PERSONAL_DIR=\&quot;OpenTTD\&quot;;_SQ64"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
@@ -410,7 +410,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib dxguid.lib libfreetype2.lib libicu.lib"
AdditionalDependencies="winmm.lib ws2_32.lib libpng.lib zlibstat.lib lzo2.lib dxguid.lib libfreetype2.lib libicu.lib"
LinkIncremental="0"
SuppressStartupBanner="true"
IgnoreDefaultLibraryNames="LIBCMT.lib"

View File

@@ -1,6 +1,6 @@
OpenTTD README
Last updated: 2010-01-05
Release version: 1.0.0-beta2
Last updated: 2010-04-21
Release version: 1.0.1-RC2
------------------------------------------------------------------------
@@ -18,6 +18,7 @@ Table of Contents:
6.0) Configuration File
7.0) Compiling
* 7.1) Required/optional libraries
* 7.2) Supported compilers
8.0) Translating
* 8.1 Translation
* 8.2 Previewing
@@ -201,10 +202,11 @@ when using other versions of the game.
4.1.1) Free graphics and sound files
------ -----------------------------
The free data files, split into OpenGFX for graphics and OpenSFX for sounds
can be found at:
The free data files, split into OpenGFX for graphics, OpenSFX for sounds and
OpenMSX for music can be found at:
- http://bundles.openttdcoop.org/opengfx/releases/ for OpenGFX
- http://bundles.openttdcoop.org/opensfx/releases/ for OpenSFX
- http://bundles.openttdcoop.org/openmsx/releases/ for OpenMSX
Please follow the readme of these packages about the installation procedure.
The Windows installer can optionally download and install these packages.
@@ -250,11 +252,14 @@ The TTD artwork files listed in the section 4.1 "(Required) 3rd party files"
can be placed in a few different locations:
1. The current working directory (from where you started OpenTTD)
2. Your personal directory
Windows: C:\Documents and Settings\<username>\My Documents\OpenTTD
Windows: C:\My Documents (95, 98, ME)
C:\Documents and Settings\<username>\My Documents\OpenTTD (2000, XP)
C:\Users\<username>\Documents\OpenTTD (Vista, 7)
Mac OSX: ~/Documents/OpenTTD
Linux: ~/.openttd
3. The shared directory
Windows: C:\Documents and Settings\All Users\Documents\OpenTTD
Windows: C:\Documents and Settings\All Users\Shared Documents\OpenTTD (2000, XP)
C:\Users\Public\Documents\OpenTTD (Vista, 7)
Mac OSX: /Library/Application Support/OpenTTD
Linux: not available
4. The binary directory (where the OpenTTD executable is)
@@ -410,6 +415,7 @@ DOS:
The following libraries are used by OpenTTD for:
- libSDL/liballegro: hardware access (video, sound, mouse)
- zlib: (de)compressing of savegames
- liblzo2: (de)compressing of old (pre 0.3.0) savegames
- libpng: making screenshots and loading heightmaps
- libfreetype: loading generic fonts and rendering them
- libfontconfig: searching for fonts, resolving font names to actual fonts
@@ -420,6 +426,23 @@ zlib you cannot open most savegames or use the content downloading system.
Without libSDL/liballegro on non-Windows and non-MacOS X machines you have
no graphical user interface; you would be building a dedicated server.
7.2) Supported compilers:
---- -------------------
The following compilers are known to compile OpenTTD:
- Microsoft Visual C++ (MSVC) 2005 and 2008.
Version 2005 gives bogus warnings about scoping issues.
- GNU Compiler Collection (GCC) 3.3 - 4.5.
Versions 4.1 and earlier give bogus warnings about uninitialised variables.
Versions 4.4 and later give bogus warnings about freeing heap objects.
- Intel C++ Compiler (ICC) 11.0 and 11.1.
The following compilers are known not to compile OpenTTD:
- Microsoft Visual C++ (MSVC) 2003 and earlier.
- GNU Compiler Collection (GCC) 3.2 and earlier.
- (Open) Watcom.
If any of these compilers can compile OpenTTD again, please let us know.
8.0) Translating:
---- -------------------
See http://www.openttd.org/development for up-to-date information.
@@ -486,8 +509,12 @@ debugging messages. This is mostly undocumented so best is to look in the
source code file debug.c for the various debugging types. For more information
look at http://wiki.openttd.org/index.php/Command_line.
The most frequent problem is missing data files. Don't forget to put all GRF
files from TTD into your data/ folder including sample.cat!
The most frequent problem is missing data files. Please install OpenGFX and
possibly OpenSFX and OpenMSX. See section 4.1.1 for more information.
Under, especially, Ubuntu OpenTTD can be extremely slow and freeze/hand under
certain circumstance. See known-bugs.txt for more information and how to
solve this problem on your computer.
Under Windows 98 and lower it is impossible to use a dedicated server; it will
fail to start. Perhaps this is for the better because those OSes are not known
@@ -508,10 +535,8 @@ X.X) Credits:
---- --------
The OpenTTD team (in alphabetical order):
Albert Hofkamp (Alberth) - GUI expert
Jean-Francois Claeys (Belugas) - GUI, newindustries and more
Bjarni Corfitzen (Bjarni) - MacOSX port, coder and vehicles
Jean-François Claeys (Belugas) - GUI, newindustries and more
Matthijs Kooijman (blathijs) - Pathfinder-guru, pool rework
Victor Fischer (Celestar) - Programming everywhere you need him to
Christoph Elsenhans (frosch) - General coding
Loïc Guilloux (glx) - Windows Expert
Michael Lutz (michi_cc) - Path based signals
@@ -519,9 +544,12 @@ The OpenTTD team (in alphabetical order):
Peter Nelson (peter1138) - Spiritual descendant from newGRF gods
Remko Bijker (Rubidium) - Lead coder and way more
Zdeněk Sojka (SmatZ) - Bug finder and fixer
José Soler (Terkhen) - General coding
Thijs Marinussen (Yexo) - AI Framework
Inactive Developers:
Bjarni Corfitzen (Bjarni) - MacOSX port, coder and vehicles
Victor Fischer (Celestar) - Programming everywhere you need him to
Tamás Faragó (Darkvater) - Ex-Lead coder
Jaroslav Mazanec (KUDr) - YAPG (Yet Another Pathfinder God) ;)
Jonathan Coome (Maedhros) - High priest of the NewGRF Temple
@@ -546,7 +574,6 @@ Thanks to:
Christian Rosentreter (tokai) - MorphOS / AmigaOS port
Richard Kempton (RichK67) - Additional airports, initial TGP implementation
Alberto Demichelis - Squirrel scripting language
Markus F.X.J. Oberhumer - MiniLZO for loading old savegames
L. Peter Deutsch - MD5 implementation
Michael Blunck - For revolutionizing TTD with awesome graphics
George - Canal graphics

View File

@@ -4,7 +4,6 @@ animated_tile.cpp
articulated_vehicles.cpp
autoreplace.cpp
bmp.cpp
callback_table.cpp
cargopacket.cpp
cargotype.cpp
cheat.cpp
@@ -59,6 +58,7 @@ settings.cpp
signal.cpp
signs.cpp
sound.cpp
sprite.cpp
spritecache.cpp
station.cpp
string.cpp
@@ -67,6 +67,7 @@ subsidy.cpp
texteff.cpp
tgp.cpp
tile_map.cpp
tilearea.cpp
townname.cpp
#if WIN32
#else
@@ -99,7 +100,6 @@ window.cpp
#end
aircraft.h
airport.h
airport_movement.h
animated_tile_func.h
articulated_vehicles.h
autoreplace_base.h
@@ -112,7 +112,6 @@ base_media_func.h
base_station_base.h
bmp.h
bridge.h
callback_table.h
cargo_type.h
cargopacket.h
cargotype.h
@@ -166,6 +165,7 @@ genworld.h
gfx_func.h
gfx_type.h
gfxinit.h
graph_gui.h
group.h
group_gui.h
group_type.h
@@ -207,6 +207,7 @@ newgrf_house.h
newgrf_industries.h
newgrf_industrytiles.h
newgrf_properties.h
newgrf_railtype.h
newgrf_sound.h
newgrf_spritegroup.h
newgrf_station.h
@@ -239,6 +240,7 @@ roadstop_base.h
roadveh.h
screenshot.h
sdl.h
smallmap_gui.h
sound/sdl_s.h
video/sdl_v.h
settings_func.h
@@ -475,6 +477,10 @@ saveload/vehicle_sl.cpp
saveload/waypoint_sl.cpp
# Tables
table/airport_defaults.h
table/airporttile_ids.h
table/airporttiles.h
table/airport_movement.h
table/animcursors.h
table/autorail.h
table/bridge_land.h
@@ -511,12 +517,7 @@ table/water_land.h
3rdparty/md5/md5.cpp
3rdparty/md5/md5.h
# MiniLZO
3rdparty/minilzo/lzoconf.h
3rdparty/minilzo/lzodefs.h
3rdparty/minilzo/minilzo.c
3rdparty/minilzo/minilzo.h
#if AI
# Script
script/script_info.cpp
script/script_info.hpp
@@ -697,6 +698,7 @@ ai/api/ai_vehicle.cpp
ai/api/ai_vehiclelist.cpp
ai/api/ai_waypoint.cpp
ai/api/ai_waypointlist.cpp
#end
# Blitters
#if DEDICATED
@@ -748,6 +750,7 @@ newgrf_generic.cpp
newgrf_house.cpp
newgrf_industries.cpp
newgrf_industrytiles.cpp
newgrf_railtype.cpp
newgrf_sound.cpp
newgrf_spritegroup.cpp
newgrf_station.cpp
@@ -807,6 +810,8 @@ network/core/tcp_content.cpp
network/core/tcp_content.h
network/core/tcp_game.cpp
network/core/tcp_game.h
network/core/tcp_http.cpp
network/core/tcp_http.h
network/core/udp.cpp
network/core/udp.h

View File

@@ -1,340 +0,0 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) 19yy <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) 19yy name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Library General
Public License instead of this License.

View File

@@ -1,113 +0,0 @@
#
# a very simple Makefile for miniLZO
#
# Copyright (C) 1996-2008 Markus F.X.J. Oberhumer
#
PROGRAM = testmini
SOURCES = testmini.c minilzo.c
default:
@echo "Please choose one of the following targets:"
@echo " gcc: gcc"
@echo " unix: hpux hpux9"
@echo " win32: win32-bc win32-cygwin win32-dm win32-lccwin32"
@echo " win32-intelc win32-mingw win32-vc win32-watcomc"
@echo " dos16: dos16-bc dos16-mc dos16-wc"
@echo " dos32: dos32-djgpp2 dos32-wc"
# Make sure that minilzo.h, lzoconf.h and lzodefs.h are in the
# current dircectory. Otherwise you may want to adjust CPPFLAGS.
##CPPFLAGS = -I../include/lzo -I.
GCC_CFLAGS = -s -Wall -O2 -fomit-frame-pointer
#
# gcc (generic)
#
gcc:
gcc $(CPPFLAGS) $(GCC_CFLAGS) -o $(PROGRAM) $(SOURCES)
cc:
cc $(CPPFLAGS) -o $(PROGRAM) $(SOURCES)
#
# UNIX
#
hpux:
cc -Ae $(CPPFLAGS) -o $(PROGRAM) $(SOURCES)
hpux9:
cc -Aa -D_HPUX_SOURCE $(CPPFLAGS) -o $(PROGRAM) $(SOURCES)
#
# Windows (32-bit)
#
win32-borlandc win32-bc:
bcc32 -O2 -d -w -w-aus $(CPPFLAGS) $(SOURCES)
win32-cygwin32 win32-cygwin:
gcc -mcygwin $(CPPFLAGS) $(GCC_CFLAGS) -o $(PROGRAM).exe $(SOURCES)
win32-digitalmars win32-dm:
dmc -mn -o -w- $(CPPFLAGS) $(SOURCES)
win32-intelc win32-ic:
icl -nologo -MD -W3 -O2 -GF $(CPPFLAGS) $(SOURCES)
win32-lccwin32:
@echo "NOTE: need lcc 2002-07-25 or newer, older versions have bugs"
lc -A -unused -O $(CPPFLAGS) $(SOURCES)
win32-mingw32 win32-mingw:
gcc -mno-cygwin $(CPPFLAGS) $(GCC_CFLAGS) -o $(PROGRAM).exe $(SOURCES)
win32-visualc win32-vc:
cl -nologo -MD -W3 -O2 -GF $(CPPFLAGS) $(SOURCES)
win32-watcomc win32-wc:
wcl386 -bt=nt -zq -mf -5r -zc -w5 -oneatx $(CPPFLAGS) $(SOURCES)
#
# DOS (16-bit)
#
dos16-borlandc dos16-bc:
bcc -ml -w -d -O -4 $(CPPFLAGS) $(SOURCES)
dos16-microsoftc dos16-msc dos16-mc:
cl -nologo -f- -AL -O -G2 -W3 $(CPPFLAGS) $(SOURCES)
dos16-watcomc dos16-wc:
wcl -zq -ml -bt=dos -l=dos -ox -w5 $(CPPFLAGS) $(SOURCES)
#
# DOS (32-bit)
#
dos32-djgpp2 dos32-dj2:
gcc $(CPPFLAGS) $(GCC_CFLAGS) -o $(PROGRAM).exe $(SOURCES)
dos32-watcomc dos32-wc:
wcl386 -zq -mf -bt=dos -l=dos4g -5r -ox -zc $(CPPFLAGS) $(SOURCES)
#
# other targets
#
clean:
rm -f $(PROGRAM) $(PROGRAM).exe $(PROGRAM).map $(PROGRAM).tds
rm -f *.err *.o *.obj
.PHONY: default clean

View File

@@ -1,123 +0,0 @@
============================================================================
miniLZO -- mini subset of the LZO real-time data compression library
============================================================================
Author : Markus Franz Xaver Johannes Oberhumer
<markus@oberhumer.com>
http://www.oberhumer.com/opensource/lzo/
Version : 2.03
Date : 30 Apr 2008
I've created miniLZO for projects where it is inconvenient to
include (or require) the full LZO source code just because you
want to add a little bit of data compression to your application.
miniLZO implements the LZO1X-1 compressor and both the standard and
safe LZO1X decompressor. Apart from fast compression it also useful
for situations where you want to use pre-compressed data files (which
must have been compressed with LZO1X-999).
miniLZO consists of one C source file and three header files:
minilzo.c
minilzo.h, lzoconf.h, lzodefs.h
To use miniLZO just copy these files into your source directory, add
minilzo.c to your Makefile and #include minilzo.h from your program.
Note: you also must distribute this file (`README.LZO') with your project.
minilzo.o compiles to about 6 kB (using gcc or Visual C on a i386), and
the sources are about 30 kB when packed with zip - so there's no more
excuse that your application doesn't support data compression :-)
For more information, documentation, example programs and other support
files (like Makefiles and build scripts) please download the full LZO
package from
http://www.oberhumer.com/opensource/lzo/
Have fun,
Markus
P.S. minilzo.c is generated automatically from the LZO sources and
therefore functionality is completely identical
Appendix A: building miniLZO
----------------------------
miniLZO is written such a way that it should compile and run
out-of-the-box on most machines.
If you are running on a very unusual architecture and lzo_init() fails then
you should first recompile with `-DLZO_DEBUG' to see what causes the failure.
The most probable case is something like `sizeof(char *) != sizeof(long)'.
After identifying the problem you can compile by adding some defines
like `-DSIZEOF_CHAR_P=8' to your Makefile.
The best solution is (of course) using Autoconf - if your project uses
Autoconf anyway just add `-DMINILZO_HAVE_CONFIG_H' to your compiler
flags when compiling minilzo.c. See the LZO distribution for an example
how to set up configure.in.
Appendix B: list of public functions available in miniLZO
---------------------------------------------------------
Library initialization
lzo_init()
Compression
lzo1x_1_compress()
Decompression
lzo1x_decompress()
lzo1x_decompress_safe()
Checksum functions
lzo_adler32()
Version functions
lzo_version()
lzo_version_string()
lzo_version_date()
Portable (but slow) string functions
lzo_memcmp()
lzo_memcpy()
lzo_memmove()
lzo_memset()
Appendix C: suggested macros for `configure.in' when using Autoconf
-------------------------------------------------------------------
Checks for typedefs and structures
AC_CHECK_TYPE(ptrdiff_t,long)
AC_TYPE_SIZE_T
AC_CHECK_SIZEOF(short)
AC_CHECK_SIZEOF(int)
AC_CHECK_SIZEOF(long)
AC_CHECK_SIZEOF(long long)
AC_CHECK_SIZEOF(__int64)
AC_CHECK_SIZEOF(void *)
AC_CHECK_SIZEOF(size_t)
AC_CHECK_SIZEOF(ptrdiff_t)
Checks for compiler characteristics
AC_C_CONST
Checks for library functions
AC_CHECK_FUNCS(memcmp memcpy memmove memset)
Appendix D: Copyright
---------------------
LZO and miniLZO are Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002,
2003, 2004, 2005, 2006, 2007, 2008 Markus Franz Xaver Johannes Oberhumer
LZO and miniLZO are distributed under the terms of the GNU General
Public License (GPL). See the file COPYING.
Special licenses for commercial and other applications which
are not willing to accept the GNU General Public License
are available by contacting the author.

View File

@@ -1,417 +0,0 @@
/* lzoconf.h -- configuration for the LZO real-time data compression library
This file is part of the LZO real-time data compression library.
Copyright (C) 2008 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2007 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2006 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2005 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2004 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2003 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2002 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2001 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2000 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1999 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1998 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1997 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1996 Markus Franz Xaver Johannes Oberhumer
All Rights Reserved.
The LZO library is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of
the License, or (at your option) any later version.
The LZO library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with the LZO library; see the file COPYING.
If not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Markus F.X.J. Oberhumer
<markus@oberhumer.com>
http://www.oberhumer.com/opensource/lzo/
*/
#ifndef __LZOCONF_H_INCLUDED
#define __LZOCONF_H_INCLUDED
#define LZO_VERSION 0x2030
#define LZO_VERSION_STRING "2.03"
#define LZO_VERSION_DATE "Apr 30 2008"
/* internal Autoconf configuration file - only used when building LZO */
#if defined(LZO_HAVE_CONFIG_H)
# include <config.h>
#endif
#include <limits.h>
#include <stddef.h>
/***********************************************************************
// LZO requires a conforming <limits.h>
************************************************************************/
#if !defined(CHAR_BIT) || (CHAR_BIT != 8)
# error "invalid CHAR_BIT"
#endif
#if !defined(UCHAR_MAX) || !defined(UINT_MAX) || !defined(ULONG_MAX)
# error "check your compiler installation"
#endif
#if (USHRT_MAX < 1) || (UINT_MAX < 1) || (ULONG_MAX < 1)
# error "your limits.h macros are broken"
#endif
/* get OS and architecture defines */
#ifndef __LZODEFS_H_INCLUDED
#include "lzodefs.h"
#endif
#ifdef __cplusplus
extern "C" {
#endif
/***********************************************************************
// some core defines
************************************************************************/
#if !defined(LZO_UINT32_C)
# if (UINT_MAX < LZO_0xffffffffL)
# define LZO_UINT32_C(c) c ## UL
# else
# define LZO_UINT32_C(c) ((c) + 0U)
# endif
#endif
/* memory checkers */
#if !defined(__LZO_CHECKER)
# if defined(__BOUNDS_CHECKING_ON)
# define __LZO_CHECKER 1
# elif defined(__CHECKER__)
# define __LZO_CHECKER 1
# elif defined(__INSURE__)
# define __LZO_CHECKER 1
# elif defined(__PURIFY__)
# define __LZO_CHECKER 1
# endif
#endif
/***********************************************************************
// integral and pointer types
************************************************************************/
/* lzo_uint should match size_t */
#if !defined(LZO_UINT_MAX)
# if defined(LZO_ABI_LLP64) /* WIN64 */
# if defined(LZO_OS_WIN64)
typedef unsigned __int64 lzo_uint;
typedef __int64 lzo_int;
# else
typedef unsigned long long lzo_uint;
typedef long long lzo_int;
# endif
# define LZO_UINT_MAX 0xffffffffffffffffull
# define LZO_INT_MAX 9223372036854775807LL
# define LZO_INT_MIN (-1LL - LZO_INT_MAX)
# elif defined(LZO_ABI_IP32L64) /* MIPS R5900 */
typedef unsigned int lzo_uint;
typedef int lzo_int;
# define LZO_UINT_MAX UINT_MAX
# define LZO_INT_MAX INT_MAX
# define LZO_INT_MIN INT_MIN
# elif (ULONG_MAX >= LZO_0xffffffffL)
typedef unsigned long lzo_uint;
typedef long lzo_int;
# define LZO_UINT_MAX ULONG_MAX
# define LZO_INT_MAX LONG_MAX
# define LZO_INT_MIN LONG_MIN
# else
# error "lzo_uint"
# endif
#endif
/* Integral types with 32 bits or more. */
#if !defined(LZO_UINT32_MAX)
# if (UINT_MAX >= LZO_0xffffffffL)
typedef unsigned int lzo_uint32;
typedef int lzo_int32;
# define LZO_UINT32_MAX UINT_MAX
# define LZO_INT32_MAX INT_MAX
# define LZO_INT32_MIN INT_MIN
# elif (ULONG_MAX >= LZO_0xffffffffL)
typedef unsigned long lzo_uint32;
typedef long lzo_int32;
# define LZO_UINT32_MAX ULONG_MAX
# define LZO_INT32_MAX LONG_MAX
# define LZO_INT32_MIN LONG_MIN
# else
# error "lzo_uint32"
# endif
#endif
/* The larger type of lzo_uint and lzo_uint32. */
#if (LZO_UINT_MAX >= LZO_UINT32_MAX)
# define lzo_xint lzo_uint
#else
# define lzo_xint lzo_uint32
#endif
/* Memory model that allows to access memory at offsets of lzo_uint. */
#if !defined(__LZO_MMODEL)
# if (LZO_UINT_MAX <= UINT_MAX)
# define __LZO_MMODEL
# elif defined(LZO_HAVE_MM_HUGE_PTR)
# define __LZO_MMODEL_HUGE 1
# define __LZO_MMODEL __huge
# else
# define __LZO_MMODEL
# endif
#endif
/* no typedef here because of const-pointer issues */
#define lzo_bytep unsigned char __LZO_MMODEL *
#define lzo_charp char __LZO_MMODEL *
#define lzo_voidp void __LZO_MMODEL *
#define lzo_shortp short __LZO_MMODEL *
#define lzo_ushortp unsigned short __LZO_MMODEL *
#define lzo_uint32p lzo_uint32 __LZO_MMODEL *
#define lzo_int32p lzo_int32 __LZO_MMODEL *
#define lzo_uintp lzo_uint __LZO_MMODEL *
#define lzo_intp lzo_int __LZO_MMODEL *
#define lzo_xintp lzo_xint __LZO_MMODEL *
#define lzo_voidpp lzo_voidp __LZO_MMODEL *
#define lzo_bytepp lzo_bytep __LZO_MMODEL *
/* deprecated - use `lzo_bytep' instead of `lzo_byte *' */
#define lzo_byte unsigned char __LZO_MMODEL
typedef int lzo_bool;
/***********************************************************************
// function types
************************************************************************/
/* name mangling */
#if !defined(__LZO_EXTERN_C)
# ifdef __cplusplus
# define __LZO_EXTERN_C extern "C"
# else
# define __LZO_EXTERN_C extern
# endif
#endif
/* calling convention */
#if !defined(__LZO_CDECL)
# define __LZO_CDECL __lzo_cdecl
#endif
/* DLL export information */
#if !defined(__LZO_EXPORT1)
# define __LZO_EXPORT1
#endif
#if !defined(__LZO_EXPORT2)
# define __LZO_EXPORT2
#endif
/* __cdecl calling convention for public C and assembly functions */
#if !defined(LZO_PUBLIC)
# define LZO_PUBLIC(_rettype) __LZO_EXPORT1 _rettype __LZO_EXPORT2 __LZO_CDECL
#endif
#if !defined(LZO_EXTERN)
# define LZO_EXTERN(_rettype) __LZO_EXTERN_C LZO_PUBLIC(_rettype)
#endif
#if !defined(LZO_PRIVATE)
# define LZO_PRIVATE(_rettype) static _rettype __LZO_CDECL
#endif
/* function types */
typedef int
(__LZO_CDECL *lzo_compress_t) ( const lzo_bytep src, lzo_uint src_len,
lzo_bytep dst, lzo_uintp dst_len,
lzo_voidp wrkmem );
typedef int
(__LZO_CDECL *lzo_decompress_t) ( const lzo_bytep src, lzo_uint src_len,
lzo_bytep dst, lzo_uintp dst_len,
lzo_voidp wrkmem );
typedef int
(__LZO_CDECL *lzo_optimize_t) ( lzo_bytep src, lzo_uint src_len,
lzo_bytep dst, lzo_uintp dst_len,
lzo_voidp wrkmem );
typedef int
(__LZO_CDECL *lzo_compress_dict_t)(const lzo_bytep src, lzo_uint src_len,
lzo_bytep dst, lzo_uintp dst_len,
lzo_voidp wrkmem,
const lzo_bytep dict, lzo_uint dict_len );
typedef int
(__LZO_CDECL *lzo_decompress_dict_t)(const lzo_bytep src, lzo_uint src_len,
lzo_bytep dst, lzo_uintp dst_len,
lzo_voidp wrkmem,
const lzo_bytep dict, lzo_uint dict_len );
/* Callback interface. Currently only the progress indicator ("nprogress")
* is used, but this may change in a future release. */
struct lzo_callback_t;
typedef struct lzo_callback_t lzo_callback_t;
#define lzo_callback_p lzo_callback_t __LZO_MMODEL *
/* malloc & free function types */
typedef lzo_voidp (__LZO_CDECL *lzo_alloc_func_t)
(lzo_callback_p self, lzo_uint items, lzo_uint size);
typedef void (__LZO_CDECL *lzo_free_func_t)
(lzo_callback_p self, lzo_voidp ptr);
/* a progress indicator callback function */
typedef void (__LZO_CDECL *lzo_progress_func_t)
(lzo_callback_p, lzo_uint, lzo_uint, int);
struct lzo_callback_t
{
/* custom allocators (set to 0 to disable) */
lzo_alloc_func_t nalloc; /* [not used right now] */
lzo_free_func_t nfree; /* [not used right now] */
/* a progress indicator callback function (set to 0 to disable) */
lzo_progress_func_t nprogress;
/* NOTE: the first parameter "self" of the nalloc/nfree/nprogress
* callbacks points back to this struct, so you are free to store
* some extra info in the following variables. */
lzo_voidp user1;
lzo_xint user2;
lzo_xint user3;
};
/***********************************************************************
// error codes and prototypes
************************************************************************/
/* Error codes for the compression/decompression functions. Negative
* values are errors, positive values will be used for special but
* normal events.
*/
#define LZO_E_OK 0
#define LZO_E_ERROR (-1)
#define LZO_E_OUT_OF_MEMORY (-2) /* [not used right now] */
#define LZO_E_NOT_COMPRESSIBLE (-3) /* [not used right now] */
#define LZO_E_INPUT_OVERRUN (-4)
#define LZO_E_OUTPUT_OVERRUN (-5)
#define LZO_E_LOOKBEHIND_OVERRUN (-6)
#define LZO_E_EOF_NOT_FOUND (-7)
#define LZO_E_INPUT_NOT_CONSUMED (-8)
#define LZO_E_NOT_YET_IMPLEMENTED (-9) /* [not used right now] */
#ifndef lzo_sizeof_dict_t
# define lzo_sizeof_dict_t ((unsigned)sizeof(lzo_bytep))
#endif
/* lzo_init() should be the first function you call.
* Check the return code !
*
* lzo_init() is a macro to allow checking that the library and the
* compiler's view of various types are consistent.
*/
#define lzo_init() __lzo_init_v2(LZO_VERSION,(int)sizeof(short),(int)sizeof(int),\
(int)sizeof(long),(int)sizeof(lzo_uint32),(int)sizeof(lzo_uint),\
(int)lzo_sizeof_dict_t,(int)sizeof(char *),(int)sizeof(lzo_voidp),\
(int)sizeof(lzo_callback_t))
LZO_EXTERN(int) __lzo_init_v2(unsigned,int,int,int,int,int,int,int,int,int);
/* version functions (useful for shared libraries) */
LZO_EXTERN(unsigned) lzo_version(void);
LZO_EXTERN(const char *) lzo_version_string(void);
LZO_EXTERN(const char *) lzo_version_date(void);
LZO_EXTERN(const lzo_charp) _lzo_version_string(void);
LZO_EXTERN(const lzo_charp) _lzo_version_date(void);
/* string functions */
LZO_EXTERN(int)
lzo_memcmp(const lzo_voidp _s1, const lzo_voidp _s2, lzo_uint _len);
LZO_EXTERN(lzo_voidp)
lzo_memcpy(lzo_voidp _dest, const lzo_voidp _src, lzo_uint _len);
LZO_EXTERN(lzo_voidp)
lzo_memmove(lzo_voidp _dest, const lzo_voidp _src, lzo_uint _len);
LZO_EXTERN(lzo_voidp)
lzo_memset(lzo_voidp _s, int _c, lzo_uint _len);
/* checksum functions */
LZO_EXTERN(lzo_uint32)
lzo_adler32(lzo_uint32 _adler, const lzo_bytep _buf, lzo_uint _len);
LZO_EXTERN(lzo_uint32)
lzo_crc32(lzo_uint32 _c, const lzo_bytep _buf, lzo_uint _len);
LZO_EXTERN(const lzo_uint32p)
lzo_get_crc32_table(void);
/* misc. */
LZO_EXTERN(int) _lzo_config_check(void);
typedef union { lzo_bytep p; lzo_uint u; } __lzo_pu_u;
typedef union { lzo_bytep p; lzo_uint32 u32; } __lzo_pu32_u;
typedef union { void *vp; lzo_bytep bp; lzo_uint32 u32; long l; } lzo_align_t;
/* align a char pointer on a boundary that is a multiple of `size' */
LZO_EXTERN(unsigned) __lzo_align_gap(const lzo_voidp _ptr, lzo_uint _size);
#define LZO_PTR_ALIGN_UP(_ptr,_size) \
((_ptr) + (lzo_uint) __lzo_align_gap((const lzo_voidp)(_ptr),(lzo_uint)(_size)))
/***********************************************************************
// deprecated macros - only for backward compatibility with LZO v1.xx
************************************************************************/
#if defined(LZO_CFG_COMPAT)
#define __LZOCONF_H 1
#if defined(LZO_ARCH_I086)
# define __LZO_i386 1
#elif defined(LZO_ARCH_I386)
# define __LZO_i386 1
#endif
#if defined(LZO_OS_DOS16)
# define __LZO_DOS 1
# define __LZO_DOS16 1
#elif defined(LZO_OS_DOS32)
# define __LZO_DOS 1
#elif defined(LZO_OS_WIN16)
# define __LZO_WIN 1
# define __LZO_WIN16 1
#elif defined(LZO_OS_WIN32)
# define __LZO_WIN 1
#endif
#define __LZO_CMODEL
#define __LZO_DMODEL
#define __LZO_ENTRY __LZO_CDECL
#define LZO_EXTERN_CDECL LZO_EXTERN
#define LZO_ALIGN LZO_PTR_ALIGN_UP
#define lzo_compress_asm_t lzo_compress_t
#define lzo_decompress_asm_t lzo_decompress_t
#endif /* LZO_CFG_COMPAT */
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /* already included */
/* vim:set ts=4 et: */

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,106 +0,0 @@
/* minilzo.h -- mini subset of the LZO real-time data compression library
This file is part of the LZO real-time data compression library.
Copyright (C) 2008 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2007 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2006 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2005 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2004 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2003 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2002 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2001 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2000 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1999 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1998 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1997 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1996 Markus Franz Xaver Johannes Oberhumer
All Rights Reserved.
The LZO library is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of
the License, or (at your option) any later version.
The LZO library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with the LZO library; see the file COPYING.
If not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Markus F.X.J. Oberhumer
<markus@oberhumer.com>
http://www.oberhumer.com/opensource/lzo/
*/
/*
* NOTE:
* the full LZO package can be found at
* http://www.oberhumer.com/opensource/lzo/
*/
#ifndef __MINILZO_H
#define __MINILZO_H
#define MINILZO_VERSION 0x2030
#ifdef __LZOCONF_H
# error "you cannot use both LZO and miniLZO"
#endif
#undef LZO_HAVE_CONFIG_H
#include "lzoconf.h"
#if !defined(LZO_VERSION) || (LZO_VERSION != MINILZO_VERSION)
# error "version mismatch in header files"
#endif
#ifdef __cplusplus
extern "C" {
#endif
/***********************************************************************
//
************************************************************************/
/* Memory required for the wrkmem parameter.
* When the required size is 0, you can also pass a NULL pointer.
*/
#define LZO1X_MEM_COMPRESS LZO1X_1_MEM_COMPRESS
#define LZO1X_1_MEM_COMPRESS ((lzo_uint32) (16384L * lzo_sizeof_dict_t))
#define LZO1X_MEM_DECOMPRESS (0)
/* compression */
LZO_EXTERN(int)
lzo1x_1_compress ( const lzo_bytep src, lzo_uint src_len,
lzo_bytep dst, lzo_uintp dst_len,
lzo_voidp wrkmem );
/* decompression */
LZO_EXTERN(int)
lzo1x_decompress ( const lzo_bytep src, lzo_uint src_len,
lzo_bytep dst, lzo_uintp dst_len,
lzo_voidp wrkmem /* NOT USED */ );
/* safe decompression with overrun testing */
LZO_EXTERN(int)
lzo1x_decompress_safe ( const lzo_bytep src, lzo_uint src_len,
lzo_bytep dst, lzo_uintp dst_len,
lzo_voidp wrkmem /* NOT USED */ );
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /* already included */

View File

@@ -1,168 +0,0 @@
/* testmini.c -- very simple test program for the miniLZO library
This file is part of the LZO real-time data compression library.
Copyright (C) 2008 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2007 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2006 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2005 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2004 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2003 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2002 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2001 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 2000 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1999 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1998 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1997 Markus Franz Xaver Johannes Oberhumer
Copyright (C) 1996 Markus Franz Xaver Johannes Oberhumer
All Rights Reserved.
The LZO library is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of
the License, or (at your option) any later version.
The LZO library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with the LZO library; see the file COPYING.
If not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Markus F.X.J. Oberhumer
<markus@oberhumer.com>
http://www.oberhumer.com/opensource/lzo/
*/
#include <stdio.h>
#include <stdlib.h>
/*************************************************************************
// This program shows the basic usage of the LZO library.
// We will compress a block of data and decompress again.
//
// For more information, documentation, example programs and other support
// files (like Makefiles and build scripts) please download the full LZO
// package from
// http://www.oberhumer.com/opensource/lzo/
**************************************************************************/
/* First let's include "minizo.h". */
#include "minilzo.h"
/* We want to compress the data block at `in' with length `IN_LEN' to
* the block at `out'. Because the input block may be incompressible,
* we must provide a little more output space in case that compression
* is not possible.
*/
#if defined(__LZO_STRICT_16BIT)
#define IN_LEN (8*1024u)
#elif defined(LZO_ARCH_I086) && !defined(LZO_HAVE_MM_HUGE_ARRAY)
#define IN_LEN (60*1024u)
#else
#define IN_LEN (128*1024ul)
#endif
#define OUT_LEN (IN_LEN + IN_LEN / 16 + 64 + 3)
static unsigned char __LZO_MMODEL in [ IN_LEN ];
static unsigned char __LZO_MMODEL out [ OUT_LEN ];
/* Work-memory needed for compression. Allocate memory in units
* of `lzo_align_t' (instead of `char') to make sure it is properly aligned.
*/
#define HEAP_ALLOC(var,size) \
lzo_align_t __LZO_MMODEL var [ ((size) + (sizeof(lzo_align_t) - 1)) / sizeof(lzo_align_t) ]
static HEAP_ALLOC(wrkmem,LZO1X_1_MEM_COMPRESS);
/*************************************************************************
//
**************************************************************************/
int main(int argc, char *argv[])
{
int r;
lzo_uint in_len;
lzo_uint out_len;
lzo_uint new_len;
if (argc < 0 && argv == NULL) /* avoid warning about unused args */
return 0;
printf("\nLZO real-time data compression library (v%s, %s).\n",
lzo_version_string(), lzo_version_date());
printf("Copyright (C) 1996-2008 Markus Franz Xaver Johannes Oberhumer\nAll Rights Reserved.\n\n");
/*
* Step 1: initialize the LZO library
*/
if (lzo_init() != LZO_E_OK)
{
printf("internal error - lzo_init() failed !!!\n");
printf("(this usually indicates a compiler bug - try recompiling\nwithout optimizations, and enable `-DLZO_DEBUG' for diagnostics)\n");
return 3;
}
/*
* Step 2: prepare the input block that will get compressed.
* We just fill it with zeros in this example program,
* but you would use your real-world data here.
*/
in_len = IN_LEN;
lzo_memset(in,0,in_len);
/*
* Step 3: compress from `in' to `out' with LZO1X-1
*/
r = lzo1x_1_compress(in,in_len,out,&out_len,wrkmem);
if (r == LZO_E_OK)
printf("compressed %lu bytes into %lu bytes\n",
(unsigned long) in_len, (unsigned long) out_len);
else
{
/* this should NEVER happen */
printf("internal error - compression failed: %d\n", r);
return 2;
}
/* check for an incompressible block */
if (out_len >= in_len)
{
printf("This block contains incompressible data.\n");
return 0;
}
/*
* Step 4: decompress again, now going from `out' to `in'
*/
new_len = in_len;
r = lzo1x_decompress(out,out_len,in,&new_len,NULL);
if (r == LZO_E_OK && new_len == in_len)
printf("decompressed %lu bytes back into %lu bytes\n",
(unsigned long) out_len, (unsigned long) in_len);
else
{
/* this should NEVER happen */
printf("internal error - decompression failed: %d\n", r);
return 1;
}
printf("\nminiLZO simple compression test passed.\n");
return 0;
}
/*
vi:ts=4:et
*/

View File

@@ -2,6 +2,7 @@
#include <squirrel.h>
#include <sqstdaux.h>
#include <assert.h>
#include <string.h>
void sqstd_printcallstack(HSQUIRRELVM v)
{
@@ -21,7 +22,19 @@ void sqstd_printcallstack(HSQUIRRELVM v)
const SQChar *fn=_SC("unknown");
const SQChar *src=_SC("unknown");
if(si.funcname)fn=si.funcname;
if(si.source)src=si.source;
if(si.source) {
/* We don't want to bother users with absolute paths to all AI files.
* Since the path only reaches NoAI code in a formatted string we have
* to strip it here. Let's hope nobody installs openttd in a subdirectory
* of a directory named /ai/. */
src = scstrstr(si.source, _SC("\\ai\\"));
if (!src) src = scstrstr(si.source, _SC("/ai/"));
if (src) {
src += 4;
} else {
src = si.source;
}
}
pf(v,_SC("*FUNCTION [%s()] %s line [%d]\n"),fn,src,si.line);
level++;
}

View File

@@ -201,7 +201,7 @@ const SQChar* SQFunctionProto::GetLocal(SQVM *vm,SQUnsignedInteger stackbase,SQU
SQUnsignedInteger nvars=_nlocalvarinfos;
const SQChar *res=NULL;
if(nvars>=nseq){
for(SQUnsignedInteger i=0;i<nvars;i++){
for(SQUnsignedInteger i=0;i<nvars;i++){
if(_localvarinfos[i]._start_op<=nop && _localvarinfos[i]._end_op>=nop)
{
if(nseq==0){

View File

@@ -436,7 +436,7 @@ bool SQVM::LOCAL_INC(SQInteger op,SQObjectPtr &target, SQObjectPtr &a, SQObjectP
bool SQVM::PLOCAL_INC(SQInteger op,SQObjectPtr &target, SQObjectPtr &a, SQObjectPtr &incr)
{
SQObjectPtr trg;
SQObjectPtr trg;
_RET_ON_FAIL(ARITH_OP( op , trg, a, incr));
target = a;
a = trg;

View File

@@ -12,6 +12,7 @@
#ifndef AI_HPP
#define AI_HPP
#ifdef ENABLE_AI
#include "api/ai_event_types.hpp"
#include "../date_type.h"
#include "../core/string_compare_type.hpp"
@@ -20,8 +21,6 @@
typedef std::map<const char *, class AIInfo *, StringCompare> AIInfoList;
void CcAI(bool success, TileIndex tile, uint32 p1, uint32 p2);
class AI {
public:
/**
@@ -45,8 +44,9 @@ public:
/**
* Start a new AI company.
* @param company At which slot the AI company should start.
* @param rerandomise_ai Whether to rerandomise the configured AI.
*/
static void StartNew(CompanyID company);
static void StartNew(CompanyID company, bool rerandomise_ai = true);
/**
* Called every game-tick to let AIs do something.
@@ -115,7 +115,7 @@ public:
static char *GetConsoleList(char *p, const char *last);
static const AIInfoList *GetInfoList();
static const AIInfoList *GetUniqueInfoList();
static AIInfo *FindInfo(const char *name, int version);
static AIInfo *FindInfo(const char *name, int version, bool force_exact_match);
static bool ImportLibrary(const char *library, const char *class_name, int version, HSQUIRRELVM vm);
static void Rescan();
#if defined(ENABLE_NETWORK)
@@ -126,4 +126,26 @@ private:
static class AIScanner *ai_scanner;
};
#else /* ENABLE_AI */
#include "../company_type.h"
#define NewEvent(cid, event) nop()
#define BroadcastNewEvent(...) nop()
class AI {
public:
static void StartNew(CompanyID company, bool rerandomise_ai = true) {}
static void Stop(CompanyID company) {}
static void Initialize() {}
static void Uninitialize(bool keepConfig) {}
static void KillAll() {}
static void GameLoop() {}
static bool HasAI(const struct ContentInfo *ci, bool md5sum) { return false; }
static void Rescan() {}
static char *GetConsoleList(char *p, const char *last) { return p; }
static void nop() { }
};
#endif /* ENABLE_AI */
#endif /* AI_HPP */

View File

@@ -16,12 +16,13 @@
#include "ai.hpp"
#include "ai_config.hpp"
void AIConfig::ChangeAI(const char *name, int version)
void AIConfig::ChangeAI(const char *name, int version, bool force_exact_match, bool is_random_ai)
{
free((void *)this->name);
this->name = (name == NULL) ? NULL : strdup(name);
this->info = (name == NULL) ? NULL : AI::FindInfo(this->name, version);
this->info = (name == NULL) ? NULL : AI::FindInfo(this->name, version, force_exact_match);
this->version = (info == NULL) ? -1 : info->GetVersion();
this->is_random_ai = is_random_ai;
if (this->config_list != NULL) delete this->config_list;
this->config_list = (info == NULL) ? NULL : new AIConfigItemList();
if (this->config_list != NULL) this->config_list->push_back(_start_date_config);
@@ -56,6 +57,7 @@ AIConfig::AIConfig(const AIConfig *config)
this->info = config->info;
this->version = config->version;
this->config_list = NULL;
this->is_random_ai = config->is_random_ai;
for (SettingValueList::const_iterator it = config->settings.begin(); it != config->settings.end(); it++) {
this->settings[strdup((*it).first)] = (*it).second;
@@ -70,14 +72,14 @@ AIConfig::~AIConfig()
if (this->config_list != NULL) delete this->config_list;
}
AIInfo *AIConfig::GetInfo()
AIInfo *AIConfig::GetInfo() const
{
return this->info;
}
bool AIConfig::ResetInfo()
{
this->info = AI::FindInfo(this->name, -1);
this->info = AI::FindInfo(this->name, -1, false);
return this->info != NULL;
}
@@ -91,21 +93,21 @@ const AIConfigItemList *AIConfig::GetConfigList()
return this->config_list;
}
AIConfig *AIConfig::GetConfig(CompanyID company, bool forceNewgameSetting)
AIConfig *AIConfig::GetConfig(CompanyID company, AISettingSource source)
{
AIConfig **config;
if (!forceNewgameSetting) {
config = (_game_mode == GM_MENU) ? &_settings_newgame.ai_config[company] : &_settings_game.ai_config[company];
} else {
if (source == AISS_FORCE_NEWGAME || (source == AISS_DEFAULT && _game_mode == GM_MENU)) {
config = &_settings_newgame.ai_config[company];
} else {
config = &_settings_game.ai_config[company];
}
if (*config == NULL) *config = new AIConfig();
return *config;
}
int AIConfig::GetSetting(const char *name)
int AIConfig::GetSetting(const char *name) const
{
SettingValueList::iterator it = this->settings.find(name);
SettingValueList::const_iterator it = this->settings.find(name);
/* Return the default value if the setting is not set, or if we are in a not-custom difficult level */
if (it == this->settings.end() || ((_game_mode == GM_MENU) ? _settings_newgame.difficulty.diff_level : _settings_game.difficulty.diff_level) != 3) {
if (this->info == NULL) {
@@ -162,17 +164,22 @@ void AIConfig::AddRandomDeviation()
}
}
bool AIConfig::HasAI()
bool AIConfig::HasAI() const
{
return this->info != NULL;
}
const char *AIConfig::GetName()
bool AIConfig::IsRandomAI() const
{
return this->is_random_ai;
}
const char *AIConfig::GetName() const
{
return this->name;
}
int AIConfig::GetVersion()
int AIConfig::GetVersion() const
{
return this->version;
}
@@ -203,10 +210,10 @@ void AIConfig::StringToSettings(const char *value)
free(value_copy);
}
void AIConfig::SettingsToString(char *string, size_t size)
void AIConfig::SettingsToString(char *string, size_t size) const
{
string[0] = '\0';
for (SettingValueList::iterator it = this->settings.begin(); it != this->settings.end(); it++) {
for (SettingValueList::const_iterator it = this->settings.begin(); it != this->settings.end(); it++) {
char no[10];
snprintf(no, sizeof(no), "%d", (*it).second);

View File

@@ -11,10 +11,12 @@
#ifndef AI_CONFIG_HPP
#define AI_CONFIG_HPP
#ifdef ENABLE_AI
#include <map>
#include "ai_info.hpp"
#include "../core/string_compare_type.hpp"
#include "../company_type.h"
class AIConfig {
private:
@@ -25,7 +27,8 @@ public:
name(NULL),
version(-1),
info(NULL),
config_list(NULL)
config_list(NULL),
is_random_ai(false)
{}
AIConfig(const AIConfig *config);
~AIConfig();
@@ -34,8 +37,11 @@ public:
* Set another AI to be loaded in this slot.
* @param name The name of the AI.
* @param version The version of the AI to load, or -1 of latest.
* @param force_exact_match If true try to find the exact same version
* as specified. If false any compatible version is ok.
* @param is_random Is the AI chosen randomly?
*/
void ChangeAI(const char *name, int version = -1);
void ChangeAI(const char *name, int version = -1, bool force_exact_match = false, bool is_random = false);
/**
* When ever the AI Scanner is reloaded, all infos become invalid. This
@@ -48,17 +54,25 @@ public:
/**
* Get the AIInfo linked to this AIConfig.
*/
class AIInfo *GetInfo();
class AIInfo *GetInfo() const;
/**
* Get the config list for this AIConfig.
*/
const AIConfigItemList *GetConfigList();
/* Where to get the config from, either default (depends on current game
* mode) or force either newgame or normal */
enum AISettingSource {
AISS_DEFAULT, ///< Get the AI config from the current game mode
AISS_FORCE_NEWGAME, ///< Get the newgame AI config
AISS_FORCE_GAME, ///< Get the AI config from the current game
};
/**
* Get the config of a company.
*/
static AIConfig *GetConfig(CompanyID company, bool forceNewgameSetting = false);
static AIConfig *GetConfig(CompanyID company, AISettingSource source = AISS_DEFAULT);
/**
* Get the value of a setting for this config. It might fallback to his
@@ -67,7 +81,7 @@ public:
* @return The (default) value of the setting, or -1 if the setting was not
* found.
*/
int GetSetting(const char *name);
int GetSetting(const char *name) const;
/**
* Set the value of a setting for this config.
@@ -87,17 +101,22 @@ public:
/**
* Is this config attached to an AI?
*/
bool HasAI();
bool HasAI() const;
/**
* Is the current AI a randomly chosen AI?
*/
bool IsRandomAI() const;
/**
* Get the name of the AI.
*/
const char *GetName();
const char *GetName() const;
/**
* Get the version of the AI.
*/
int GetVersion();
int GetVersion() const;
/**
* Convert a string which is stored in the config file or savegames to
@@ -109,7 +128,7 @@ public:
* Convert the custom settings to a string that can be stored in the config
* file or savegames.
*/
void SettingsToString(char *string, size_t size);
void SettingsToString(char *string, size_t size) const;
private:
const char *name;
@@ -117,6 +136,8 @@ private:
class AIInfo *info;
SettingValueList settings;
AIConfigItemList *config_list;
bool is_random_ai;
};
#endif /* ENABLE_AI */
#endif /* AI_CONFIG_HPP */

View File

@@ -17,7 +17,6 @@
#include "../network/network.h"
#include "../window_func.h"
#include "../command_func.h"
#include "ai.hpp"
#include "ai_scanner.hpp"
#include "ai_instance.hpp"
#include "ai_config.hpp"
@@ -32,19 +31,20 @@
return !_networking || (_network_server && _settings_game.ai.ai_in_multiplayer);
}
/* static */ void AI::StartNew(CompanyID company)
/* static */ void AI::StartNew(CompanyID company, bool rerandomise_ai)
{
assert(Company::IsValidID(company));
/* Clients shouldn't start AIs */
if (_networking && !_network_server) return;
AIInfo *info = AIConfig::GetConfig(company)->GetInfo();
if (info == NULL) {
AIConfig *config = AIConfig::GetConfig(company);
AIInfo *info = config->GetInfo();
if (info == NULL || (rerandomise_ai && config->IsRandomAI())) {
info = AI::ai_scanner->SelectRandomAI();
assert(info != NULL);
/* Load default data and store the name in the settings */
AIConfig::GetConfig(company)->ChangeAI(info->GetName());
config->ChangeAI(info->GetName(), -1, false, true);
}
_current_company = company;
@@ -105,6 +105,7 @@
_current_company = old_company;
InvalidateWindowData(WC_AI_DEBUG, 0, -1);
DeleteWindowById(WC_AI_SETTINGS, company);
}
/* static */ void AI::KillAll()
@@ -217,14 +218,15 @@
event->Release();
}
void CcAI(bool success, TileIndex tile, uint32 p1, uint32 p2)
void CcAI(const CommandCost &result, TileIndex tile, uint32 p1, uint32 p2)
{
AIObject::SetLastCommandRes(success);
AIObject::SetLastCommandRes(result.Succeeded());
if (!success) {
AIObject::SetLastError(AIError::StringToError(_error_message));
if (result.Failed()) {
AIObject::SetLastError(AIError::StringToError(result.GetErrorMessage()));
} else {
AIObject::IncreaseDoCommandCosts(AIObject::GetLastCost());
AIObject::IncreaseDoCommandCosts(result.GetCost());
AIObject::SetLastCost(result.GetCost());
}
Company::Get(_current_company)->ai_instance->Continue();
@@ -287,9 +289,9 @@ void CcAI(bool success, TileIndex tile, uint32 p1, uint32 p2)
return AI::ai_scanner->GetUniqueAIInfoList();
}
/* static */ AIInfo *AI::FindInfo(const char *name, int version)
/* static */ AIInfo *AI::FindInfo(const char *name, int version, bool force_exact_match)
{
return AI::ai_scanner->FindInfo(name, version);
return AI::ai_scanner->FindInfo(name, version, force_exact_match);
}
/* static */ bool AI::ImportLibrary(const char *library, const char *class_name, int version, HSQUIRRELVM vm)

View File

@@ -10,6 +10,7 @@
/** @file ai_gui.cpp Window for configuring the AIs */
#include "../stdafx.h"
#include "../openttd.h"
#include "../gui.h"
#include "../window_gui.h"
#include "../company_func.h"
@@ -148,7 +149,7 @@ struct AIListWindow : public Window {
SetWindowDirty(WC_GAME_OPTIONS, 0);
}
virtual void OnClick(Point pt, int widget)
virtual void OnClick(Point pt, int widget, int click_count)
{
switch (widget) {
case AIL_WIDGET_LIST: { // Select one of the AIs
@@ -156,6 +157,10 @@ struct AIListWindow : public Window {
if (sel < (int)this->ai_info_list->size()) {
this->selected = sel;
this->SetDirty();
if (click_count > 1) {
this->ChangeAI();
delete this;
}
}
break;
}
@@ -172,21 +177,6 @@ struct AIListWindow : public Window {
}
}
virtual void OnDoubleClick(Point pt, int widget)
{
switch (widget) {
case AIL_WIDGET_LIST: {
int sel = (pt.y - this->GetWidget<NWidgetBase>(AIL_WIDGET_LIST)->pos_y) / this->line_height + this->vscroll.GetPosition() - 1;
if (sel < (int)this->ai_info_list->size()) {
this->selected = sel;
this->ChangeAI();
delete this;
}
break;
}
}
}
virtual void OnResize()
{
NWidgetCore *nwi = this->GetWidget<NWidgetCore>(AIL_WIDGET_LIST);
@@ -256,7 +246,9 @@ struct AISettingsWindow : public Window {
{
this->ai_config = AIConfig::GetConfig(slot);
this->InitNested(desc); // Initializes 'this->line_height' as side effect.
this->InitNested(desc, slot); // Initializes 'this->line_height' as side effect.
this->SetWidgetDisabledState(AIS_WIDGET_RESET, _game_mode != GM_MENU);
this->vscroll.SetCount((int)this->ai_config->GetConfigList()->size());
}
@@ -297,12 +289,13 @@ struct AISettingsWindow : public Window {
int y = r.top;
for (; this->vscroll.IsVisible(i) && it != config->GetConfigList()->end(); i++, it++) {
int current_value = config->GetSetting((*it).name);
bool editable = (_game_mode == GM_MENU) || ((it->flags & AICONFIG_INGAME) != 0);
uint x = rtl ? r.right : r.left;
if (((*it).flags & AICONFIG_BOOLEAN) != 0) {
DrawFrameRect(buttons_left, y + 2, buttons_left + 19, y + 10, (current_value != 0) ? COLOUR_GREEN : COLOUR_RED, (current_value != 0) ? FR_LOWERED : FR_NONE);
} else {
DrawArrowButtons(buttons_left, y + 2, COLOUR_YELLOW, (this->clicked_button == i) ? 1 + (this->clicked_increase != rtl) : 0, current_value > (*it).min_value, current_value < (*it).max_value);
DrawArrowButtons(buttons_left, y + 2, COLOUR_YELLOW, (this->clicked_button == i) ? 1 + (this->clicked_increase != rtl) : 0, editable && current_value > (*it).min_value, editable && current_value < (*it).max_value);
if (it->labels != NULL && it->labels->Find(current_value) != it->labels->End()) {
x = DrawString(value_left, value_right, y + WD_MATRIX_TOP, it->labels->Find(current_value)->second, TC_ORANGE);
} else {
@@ -316,7 +309,19 @@ struct AISettingsWindow : public Window {
}
}
virtual void OnClick(Point pt, int widget)
void CheckDifficultyLevel()
{
if (_game_mode == GM_MENU) {
if (_settings_newgame.difficulty.diff_level != 3) {
_settings_newgame.difficulty.diff_level = 3;
ShowErrorMessage(STR_WARNING_DIFFICULTY_TO_CUSTOM, INVALID_STRING_ID, 0, 0);
}
} else if (_settings_game.difficulty.diff_level != 3) {
IConsoleSetSetting("difficulty.diff_level", 3);
}
}
virtual void OnClick(Point pt, int widget, int click_count)
{
switch (widget) {
case AIS_WIDGET_BACKGROUND: {
@@ -327,6 +332,8 @@ struct AISettingsWindow : public Window {
AIConfigItemList::const_iterator it = this->ai_config->GetConfigList()->begin();
for (int i = 0; i < num; i++) it++;
AIConfigItem config_item = *it;
if (_game_mode != GM_MENU && (config_item.flags & AICONFIG_INGAME) == 0) return;
bool bool_item = (config_item.flags & AICONFIG_BOOLEAN) != 0;
int x = pt.x - wid->pos_x;
@@ -353,10 +360,7 @@ struct AISettingsWindow : public Window {
this->clicked_button = num;
this->timeout = 5;
if (_settings_newgame.difficulty.diff_level != 3) {
_settings_newgame.difficulty.diff_level = 3;
ShowErrorMessage(STR_WARNING_DIFFICULTY_TO_CUSTOM, INVALID_STRING_ID, 0, 0);
}
this->CheckDifficultyLevel();
} else if (!bool_item) {
/* Display a query box so users can enter a custom value. */
this->clicked_row = num;
@@ -386,6 +390,7 @@ struct AISettingsWindow : public Window {
for (int i = 0; i < this->clicked_row; i++) it++;
int32 value = atoi(str);
this->ai_config->SetSetting((*it).name, value);
this->CheckDifficultyLevel();
this->SetDirty();
}
@@ -572,7 +577,7 @@ struct AIConfigWindow : public Window {
}
}
virtual void OnClick(Point pt, int widget)
virtual void OnClick(Point pt, int widget, int click_count)
{
switch (widget) {
case AIC_WIDGET_DECREASE:
@@ -591,6 +596,7 @@ struct AIConfigWindow : public Window {
case AIC_WIDGET_LIST: { // Select a slot
this->selected_slot = (CompanyID)((pt.y - this->GetWidget<NWidgetBase>(widget)->pos_y) / this->line_height + this->vscroll.GetPosition());
this->InvalidateData();
if (click_count > 1 && this->selected_slot != INVALID_COMPANY) ShowAIListWindow((CompanyID)this->selected_slot);
break;
}
@@ -598,6 +604,7 @@ struct AIConfigWindow : public Window {
if (this->selected_slot > 1) {
Swap(_settings_newgame.ai_config[this->selected_slot], _settings_newgame.ai_config[this->selected_slot - 1]);
this->selected_slot--;
this->vscroll.ScrollTowards(this->selected_slot);
this->InvalidateData();
}
break;
@@ -606,6 +613,7 @@ struct AIConfigWindow : public Window {
if (this->selected_slot < _settings_newgame.difficulty.max_no_competitors) {
Swap(_settings_newgame.ai_config[this->selected_slot], _settings_newgame.ai_config[this->selected_slot + 1]);
this->selected_slot++;
this->vscroll.ScrollTowards(this->selected_slot);
this->InvalidateData();
}
break;
@@ -634,16 +642,6 @@ struct AIConfigWindow : public Window {
}
}
virtual void OnDoubleClick(Point pt, int widget)
{
switch (widget) {
case AIC_WIDGET_LIST:
this->OnClick(pt, widget);
if (this->selected_slot != INVALID_COMPANY) ShowAIListWindow((CompanyID)this->selected_slot);
break;
}
}
virtual void OnInvalidateData(int data)
{
if (this->selected_slot == 0 || this->selected_slot > _settings_newgame.difficulty.max_no_competitors) {
@@ -677,6 +675,7 @@ void ShowAIConfigWindow()
enum AIDebugWindowWidgets {
AID_WIDGET_VIEW,
AID_WIDGET_NAME_TEXT,
AID_WIDGET_SETTINGS,
AID_WIDGET_RELOAD_TOGGLE,
AID_WIDGET_LOG_PANEL,
AID_WIDGET_SCROLLBAR,
@@ -704,6 +703,7 @@ struct AIDebugWindow : public Window {
this->SetWidgetDisabledState(i + AID_WIDGET_COMPANY_BUTTON_START, !Company::IsValidAiID(i));
}
this->DisableWidget(AID_WIDGET_RELOAD_TOGGLE);
this->DisableWidget(AID_WIDGET_SETTINGS);
this->last_vscroll_pos = 0;
this->autoscroll = true;
@@ -743,8 +743,11 @@ struct AIDebugWindow : public Window {
}
}
/* Update "Reload AI" button */
this->SetWidgetDisabledState(AID_WIDGET_RELOAD_TOGGLE, ai_debug_company == INVALID_COMPANY);
/* Update "Reload AI" and "AI settings" buttons */
this->SetWidgetsDisabledState(ai_debug_company == INVALID_COMPANY,
AID_WIDGET_RELOAD_TOGGLE,
AID_WIDGET_SETTINGS,
WIDGET_LIST_END);
/* Draw standard stuff */
this->DrawWidgets();
@@ -781,7 +784,7 @@ struct AIDebugWindow : public Window {
if (!valid) continue;
byte offset = (i == ai_debug_company) ? 1 : 0;
DrawCompanyIcon(i, this->GetWidget<NWidgetBase>(AID_WIDGET_COMPANY_BUTTON_START + i)->pos_x + 11 + offset, this->GetWidget<NWidgetBase>(AID_WIDGET_COMPANY_BUTTON_START + i)->pos_y + 2 + offset);
DrawCompanyIcon(i, button->pos_x + button->current_x / 2 - 7 + offset, this->GetWidget<NWidgetBase>(AID_WIDGET_COMPANY_BUTTON_START + i)->pos_y + 2 + offset);
}
CompanyID old_company = _current_company;
@@ -815,7 +818,23 @@ struct AIDebugWindow : public Window {
}
}
this->last_vscroll_pos = this->vscroll.GetPosition();
}
virtual void SetStringParameters(int widget) const
{
switch (widget) {
case AID_WIDGET_NAME_TEXT:
if (ai_debug_company == INVALID_COMPANY || !Company::IsValidAiID(ai_debug_company)) {
SetDParam(0, STR_EMPTY);
} else {
const AIInfo *info = Company::Get(ai_debug_company)->ai_info;
assert(info != NULL);
SetDParam(0, STR_AI_DEBUG_NAME_AND_VERSION);
SetDParamStr(1, info->GetName());
SetDParam(2, info->GetVersion());
}
break;
}
}
virtual void DrawWidget(const Rect &r, int widget) const
@@ -823,15 +842,6 @@ struct AIDebugWindow : public Window {
if (ai_debug_company == INVALID_COMPANY) return;
switch (widget) {
case AID_WIDGET_NAME_TEXT: {
/* Draw the AI name */
AIInfo *info = Company::Get(ai_debug_company)->ai_info;
assert(info != NULL);
char name[1024];
snprintf(name, sizeof(name), "%s (v%d)", info->GetName(), info->GetVersion());
DrawString(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_RIGHT, r.top + WD_FRAMERECT_TOP, name, TC_BLACK, SA_CENTER);
break;
}
case AID_WIDGET_LOG_PANEL: {
CompanyID old_company = _current_company;
_current_company = ai_debug_company;
@@ -877,9 +887,11 @@ struct AIDebugWindow : public Window {
this->autoscroll = true;
this->last_vscroll_pos = this->vscroll.GetPosition();
this->SetDirty();
/* Close AI settings window to prevent confusion */
DeleteWindowByClass(WC_AI_SETTINGS);
}
virtual void OnClick(Point pt, int widget)
virtual void OnClick(Point pt, int widget, int click_count)
{
/* Check which button is clicked */
if (IsInsideMM(widget, AID_WIDGET_COMPANY_BUTTON_START, AID_WIDGET_COMPANY_BUTTON_END + 1)) {
@@ -888,16 +900,24 @@ struct AIDebugWindow : public Window {
ChangeToAI((CompanyID)(widget - AID_WIDGET_COMPANY_BUTTON_START));
}
}
if (widget == AID_WIDGET_RELOAD_TOGGLE && !this->IsWidgetDisabled(widget)) {
/* First kill the company of the AI, then start a new one. This should start the current AI again */
DoCommandP(0, 2, ai_debug_company, CMD_COMPANY_CTRL);
DoCommandP(0, 1, ai_debug_company, CMD_COMPANY_CTRL);
switch (widget) {
case AID_WIDGET_RELOAD_TOGGLE:
/* First kill the company of the AI, then start a new one. This should start the current AI again */
DoCommandP(0, 2, ai_debug_company, CMD_COMPANY_CTRL);
DoCommandP(0, 1, ai_debug_company, CMD_COMPANY_CTRL);
break;
case AID_WIDGET_SETTINGS:
ShowAISettingsWindow(ai_debug_company);
break;
}
}
virtual void OnTimeout()
{
this->RaiseWidget(AID_WIDGET_RELOAD_TOGGLE);
this->RaiseWidget(AID_WIDGET_SETTINGS);
this->SetDirty();
}
@@ -926,48 +946,48 @@ static const NWidgetPart _nested_ai_debug_widgets[] = {
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_VIEW),
NWidget(NWID_HORIZONTAL),
NWidget(NWID_SPACER), SetMinimalSize(2, 0),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START), SetMinimalSize(37, 13), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START), SetMinimalSize(37, 13), SetResize(1, 0), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 1), SetMinimalSize(37, 13), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 1), SetMinimalSize(37, 13), SetResize(1, 0), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 2), SetMinimalSize(37, 13), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 2), SetMinimalSize(37, 13), SetResize(1, 0), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 3), SetMinimalSize(37, 13), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 3), SetMinimalSize(37, 13), SetResize(1, 0), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 4), SetMinimalSize(37, 13), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 4), SetMinimalSize(37, 13), SetResize(1, 0), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 5), SetMinimalSize(37, 13), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 5), SetMinimalSize(37, 13), SetResize(1, 0), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 6), SetMinimalSize(37, 13), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 6), SetMinimalSize(37, 13), SetResize(1, 0), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 7), SetMinimalSize(37, 13), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 7), SetMinimalSize(37, 13), SetResize(1, 0), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
EndContainer(),
NWidget(NWID_SPACER), SetMinimalSize(2, 0), SetResize(1, 0),
NWidget(NWID_SPACER), SetMinimalSize(2, 0),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(NWID_SPACER), SetMinimalSize(2, 0),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 8), SetMinimalSize(37, 13), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 8), SetMinimalSize(37, 13), SetResize(1, 0), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 9), SetMinimalSize(37, 13), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 9), SetMinimalSize(37, 13), SetResize(1, 0), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 10), SetMinimalSize(37, 13), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 10), SetMinimalSize(37, 13), SetResize(1, 0), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 11), SetMinimalSize(37, 13), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 11), SetMinimalSize(37, 13), SetResize(1, 0), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 12), SetMinimalSize(37, 13), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 12), SetMinimalSize(37, 13), SetResize(1, 0), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 13), SetMinimalSize(37, 13), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 13), SetMinimalSize(37, 13), SetResize(1, 0), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
EndContainer(),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 14), SetMinimalSize(37, 13), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_COMPANY_BUTTON_START + 14), SetMinimalSize(37, 13), SetResize(1, 0), SetDataTip(0x0, STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP),
EndContainer(),
NWidget(NWID_SPACER), SetMinimalSize(39, 0), SetResize(1, 0),
EndContainer(),
NWidget(NWID_SPACER), SetMinimalSize(0, 1), SetResize(1, 0),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_NAME_TEXT), SetMinimalSize(150, 20), SetResize(1, 0), SetDataTip(0x0, STR_AI_DEBUG_NAME_TOOLTIP),
EndContainer(),
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, AID_WIDGET_RELOAD_TOGGLE), SetMinimalSize(149, 20), SetDataTip(STR_AI_DEBUG_RELOAD, STR_AI_DEBUG_RELOAD_TOOLTIP),
NWidget(WWT_TEXTBTN, COLOUR_GREY, AID_WIDGET_NAME_TEXT), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_JUST_STRING, STR_AI_DEBUG_NAME_TOOLTIP),
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, AID_WIDGET_SETTINGS), SetMinimalSize(100, 20), SetDataTip(STR_AI_DEBUG_SETTINGS, STR_AI_DEBUG_SETTINGS_TOOLTIP),
NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, AID_WIDGET_RELOAD_TOGGLE), SetMinimalSize(100, 20), SetDataTip(STR_AI_DEBUG_RELOAD, STR_AI_DEBUG_RELOAD_TOOLTIP),
EndContainer(),
NWidget(NWID_HORIZONTAL),
NWidget(WWT_PANEL, COLOUR_GREY, AID_WIDGET_LOG_PANEL), SetMinimalSize(287, 180), SetResize(1, 1),
@@ -980,7 +1000,7 @@ static const NWidgetPart _nested_ai_debug_widgets[] = {
};
static const WindowDesc _ai_debug_desc(
WDP_AUTO, 299, 241,
WDP_AUTO, 600, 450,
WC_AI_DEBUG, WC_NONE,
0,
_nested_ai_debug_widgets, lengthof(_nested_ai_debug_widgets)
@@ -996,3 +1016,26 @@ void ShowAIDebugWindow(CompanyID show_company)
ShowErrorMessage(STR_ERROR_AI_DEBUG_SERVER_ONLY, INVALID_STRING_ID, 0, 0);
}
}
/**
* Reset the AI windows to their initial state.
*/
void InitializeAIGui()
{
AIDebugWindow::ai_debug_company = INVALID_COMPANY;
}
/** Open the AI debug window if one of the AI scripts has crashed. */
void ShowAIDebugWindowIfAIError()
{
/* Network clients can't debug AIs. */
if (_networking && !_network_server) return;
Company *c;
FOR_ALL_COMPANIES(c) {
if (c->is_ai && c->ai_instance->IsDead()) {
ShowAIDebugWindow(c->index);
break;
}
}
}

View File

@@ -12,7 +12,24 @@
#ifndef AI_GUI_HPP
#define AI_GUI_HPP
#include "../company_type.h"
#ifdef ENABLE_AI
void ShowAIDebugWindow(CompanyID show_company = INVALID_COMPANY);
void ShowAIConfigWindow();
void ShowAIDebugWindowIfAIError();
void InitializeAIGui();
#else
#include "../gui.h"
#include "table/strings.h"
static inline void ShowAIConfigWindow()
{
ShowErrorMessage(STR_ERROR_NO_AI, STR_ERROR_NO_AI_SUB, 0, 0);
}
static inline void ShowAIDebugWindow(CompanyID show_company = INVALID_COMPANY) {ShowAIConfigWindow();}
static inline void ShowAIDebugWindowIfAIError() {}
static inline void InitializeAIGui() {}
#endif /* ENABLE_AI */
#endif /* AI_GUI_HPP */

View File

@@ -14,7 +14,6 @@
#include <squirrel.h>
#include "../script/squirrel.hpp"
#include "../script/squirrel_helper.hpp"
#include "ai.hpp"
#include "ai_info.hpp"
#include "ai_scanner.hpp"
#include "../settings_type.h"
@@ -174,12 +173,12 @@ SQInteger AIInfo::AddSetting(HSQUIRRELVM vm)
while (SQ_SUCCEEDED(sq_next(vm, -2))) {
const SQChar *sqkey;
if (SQ_FAILED(sq_getstring(vm, -2, &sqkey))) return SQ_ERROR;
const char *key = FS2OTTD(sqkey);
const char *key = SQ2OTTD(sqkey);
if (strcmp(key, "name") == 0) {
const SQChar *sqvalue;
if (SQ_FAILED(sq_getstring(vm, -1, &sqvalue))) return SQ_ERROR;
char *name = strdup(FS2OTTD(sqvalue));
char *name = strdup(SQ2OTTD(sqvalue));
char *s;
/* Don't allow '=' and ',' in configure setting names, as we need those
* 2 chars to nicely store the settings as a string. */
@@ -190,7 +189,7 @@ SQInteger AIInfo::AddSetting(HSQUIRRELVM vm)
} else if (strcmp(key, "description") == 0) {
const SQChar *sqdescription;
if (SQ_FAILED(sq_getstring(vm, -1, &sqdescription))) return SQ_ERROR;
config.description = strdup(FS2OTTD(sqdescription));
config.description = strdup(SQ2OTTD(sqdescription));
items |= 0x002;
} else if (strcmp(key, "min_value") == 0) {
SQInteger res;
@@ -275,7 +274,7 @@ SQInteger AIInfo::AddLabels(HSQUIRRELVM vm)
{
const SQChar *sq_setting_name;
if (SQ_FAILED(sq_getstring(vm, -2, &sq_setting_name))) return SQ_ERROR;
const char *setting_name = FS2OTTD(sq_setting_name);
const char *setting_name = SQ2OTTD(sq_setting_name);
AIConfigItem *config = NULL;
for (AIConfigItemList::iterator it = this->config_list.begin(); it != this->config_list.end(); it++) {
@@ -301,9 +300,9 @@ SQInteger AIInfo::AddLabels(HSQUIRRELVM vm)
if (SQ_FAILED(sq_getstring(vm, -1, &sq_label))) return SQ_ERROR;
/* Because squirrel doesn't support identifiers starting with a digit,
* we skip the first character. */
const char *key_string = FS2OTTD(sq_key);
const char *key_string = SQ2OTTD(sq_key);
int key = atoi(key_string + 1);
const char *label = FS2OTTD(sq_label);
const char *label = SQ2OTTD(sq_label);
if (config->labels->Find(key) == config->labels->End()) config->labels->Insert(key, strdup(label));

View File

@@ -12,6 +12,8 @@
#ifndef AI_INFO
#define AI_INFO
#ifdef ENABLE_AI
#include <list>
#include "../core/smallmap_type.hpp"
#include "../script/script_info.hpp"
@@ -20,6 +22,7 @@ enum AIConfigFlags {
AICONFIG_NONE = 0x0,
AICONFIG_RANDOM = 0x1, //!< When randomizing the AI, pick any value between min_value and max_value when on custom difficulty setting.
AICONFIG_BOOLEAN = 0x2, //!< This value is a boolean (either 0 (false) or 1 (true) ).
AICONFIG_INGAME = 0x4, //!< This setting can be changed while the AI is running.
};
typedef SmallMap<int, char *> LabelMapping;
@@ -140,4 +143,5 @@ private:
const char *category;
};
#endif /* ENABLE_AI */
#endif /* AI_INFO */

View File

@@ -94,7 +94,7 @@ void AI_CreateAIDummy(HSQUIRRELVM vm)
/* 3) We translate the error message in the character format that Squirrel wants.
* We can use the fact that the wchar string printing also uses %s to print
* old style char strings, which is what was generated during the script generation. */
const SQChar *sq_dummy_script = OTTD2FS(dummy_script);
const SQChar *sq_dummy_script = OTTD2SQ(dummy_script);
/* And finally we load and run the script */
sq_pushroottable(vm);

View File

@@ -11,10 +11,8 @@
#include "../stdafx.h"
#include "../debug.h"
#include "../vehicle_base.h"
#include "../saveload/saveload.h"
#include "../gui.h"
#include "table/strings.h"
#include <squirrel.h>
#include "../script/squirrel.hpp"
@@ -79,6 +77,7 @@
#include "api/ai_waypoint.hpp.sq"
#include "api/ai_waypointlist.hpp.sq"
#include "../company_base.h"
#include "../fileio_func.h"
AIStorage::~AIStorage()
@@ -91,7 +90,7 @@ AIStorage::~AIStorage()
static void PrintFunc(bool error_msg, const SQChar *message)
{
/* Convert to OpenTTD internal capable string */
AIController::Print(error_msg, FS2OTTD(message));
AIController::Print(error_msg, SQ2OTTD(message));
}
AIInstance::AIInstance(AIInfo *info) :
@@ -391,7 +390,7 @@ void AIInstance::GameLoop()
}
}
void AIInstance::CollectGarbage()
void AIInstance::CollectGarbage() const
{
if (this->is_started && !this->IsDead()) this->engine->CollectGarbage();
}
@@ -494,9 +493,9 @@ enum {
}
const SQChar *res;
sq_getstring(vm, index, &res);
/* @bug if a string longer than 512 characters is given to FS2OTTD, the
/* @bug if a string longer than 512 characters is given to SQ2OTTD, the
* internal buffer overflows. */
const char *buf = FS2OTTD(res);
const char *buf = SQ2OTTD(res);
size_t len = strlen(buf) + 1;
if (len >= 255) {
AILog::Error("Maximum string length is 254 chars. No data saved.");
@@ -674,7 +673,7 @@ void AIInstance::Save()
SlObject(NULL, _ai_byte);
static char buf[256];
SlArray(buf, _ai_sl_byte, SLE_CHAR);
if (vm != NULL) sq_pushstring(vm, OTTD2FS(buf), -1);
if (vm != NULL) sq_pushstring(vm, OTTD2SQ(buf), -1);
return true;
}
@@ -761,7 +760,7 @@ bool AIInstance::CallLoad()
/* Go to the instance-root */
sq_pushobject(vm, *this->instance);
/* Find the function-name inside the script */
sq_pushstring(vm, OTTD2FS("Load"), -1);
sq_pushstring(vm, OTTD2SQ("Load"), -1);
/* Change the "Load" string in a function pointer */
sq_get(vm, -2);
/* Push the main instance as "this" object */

View File

@@ -12,6 +12,8 @@
#ifndef AI_INSTANCE_HPP
#define AI_INSTANCE_HPP
#include <squirrel.h>
/**
* The callback function when an AI suspends.
*/
@@ -70,7 +72,7 @@ public:
/**
* Let the VM collect any garbage.
*/
void CollectGarbage();
void CollectGarbage() const;
/**
* Get the storage of this AI.
@@ -105,7 +107,7 @@ public:
/**
* Return the "this AI died" value
*/
inline bool IsDead() { return this->is_dead; }
inline bool IsDead() const { return this->is_dead; }
/**
* Call the AI Save function and save all data in the savegame.

View File

@@ -19,7 +19,6 @@
#include "../script/squirrel.hpp"
#include "../script/squirrel_helper.hpp"
#include "../script/squirrel_class.hpp"
#include "ai.hpp"
#include "ai_info.hpp"
#include "ai_scanner.hpp"
#include "api/ai_controller.hpp"
@@ -40,8 +39,10 @@ AIScanner::AIScanner() :
SQAIInfo.AddConstructor<void (AIInfo::*)(), 1>(engine, "x");
SQAIInfo.DefSQAdvancedMethod(this->engine, &AIInfo::AddSetting, "AddSetting");
SQAIInfo.DefSQAdvancedMethod(this->engine, &AIInfo::AddLabels, "AddLabels");
SQAIInfo.DefSQConst(engine, AICONFIG_NONE, "AICONFIG_NONE");
SQAIInfo.DefSQConst(engine, AICONFIG_RANDOM, "AICONFIG_RANDOM");
SQAIInfo.DefSQConst(engine, AICONFIG_BOOLEAN, "AICONFIG_BOOLEAN");
SQAIInfo.DefSQConst(engine, AICONFIG_INGAME, "AICONFIG_INGAME");
SQAIInfo.PostRegister(engine);
this->engine->AddMethod("RegisterAI", &AIInfo::Constructor, 2, "tx");
this->engine->AddMethod("RegisterDummyAI", &AIInfo::DummyConstructor, 2, "tx");
@@ -100,7 +101,7 @@ bool AIScanner::ImportLibrary(const char *library, const char *class_name, int v
} else {
snprintf(error, sizeof(error), "couldn't find library '%s' version %d. The latest version available is %d", library, version, (*iter).second->GetVersion());
}
sq_throwerror(vm, OTTD2FS(error));
sq_throwerror(vm, OTTD2SQ(error));
return false;
}
@@ -117,13 +118,13 @@ bool AIScanner::ImportLibrary(const char *library, const char *class_name, int v
/* Load the library in a 'fake' namespace, so we can link it to the name the user requested */
sq_pushroottable(vm);
sq_pushstring(vm, OTTD2FS(fake_class), -1);
sq_pushstring(vm, OTTD2SQ(fake_class), -1);
sq_newclass(vm, SQFalse);
/* Load the library */
if (!Squirrel::LoadScript(vm, (*iter).second->GetMainScript(), false)) {
char error[1024];
snprintf(error, sizeof(error), "there was a compile error when importing '%s' version %d", library, version);
sq_throwerror(vm, OTTD2FS(error));
sq_throwerror(vm, OTTD2SQ(error));
return false;
}
/* Create the fake class */
@@ -135,16 +136,16 @@ bool AIScanner::ImportLibrary(const char *library, const char *class_name, int v
/* Find the real class inside the fake class (like 'sets.Vector') */
sq_pushroottable(vm);
sq_pushstring(vm, OTTD2FS(fake_class), -1);
sq_pushstring(vm, OTTD2SQ(fake_class), -1);
if (SQ_FAILED(sq_get(vm, -2))) {
sq_throwerror(vm, _SC("internal error assigning library class"));
return false;
}
sq_pushstring(vm, OTTD2FS((*iter).second->GetInstanceName()), -1);
sq_pushstring(vm, OTTD2SQ((*iter).second->GetInstanceName()), -1);
if (SQ_FAILED(sq_get(vm, -2))) {
char error[1024];
snprintf(error, sizeof(error), "unable to find class '%s' in the library '%s' version %d", (*iter).second->GetInstanceName(), library, version);
sq_throwerror(vm, OTTD2FS(error));
sq_throwerror(vm, OTTD2SQ(error));
return false;
}
HSQOBJECT obj;
@@ -158,7 +159,7 @@ bool AIScanner::ImportLibrary(const char *library, const char *class_name, int v
/* Now link the name the user wanted to our 'fake' class */
sq_pushobject(vm, parent);
sq_pushstring(vm, OTTD2FS(class_name), -1);
sq_pushstring(vm, OTTD2SQ(class_name), -1);
sq_pushobject(vm, obj);
sq_newclass(vm, SQTrue);
sq_newslot(vm, -3, SQFalse);
@@ -245,10 +246,10 @@ void AIScanner::RegisterAI(AIInfo *info)
}
}
AIInfo *AIScanner::SelectRandomAI()
AIInfo *AIScanner::SelectRandomAI() const
{
uint num_random_ais = 0;
for (AIInfoList::iterator it = this->info_single_list.begin(); it != this->info_single_list.end(); it++) {
for (AIInfoList::const_iterator it = this->info_single_list.begin(); it != this->info_single_list.end(); it++) {
if (it->second->UseAsRandomAI()) num_random_ais++;
}
@@ -266,7 +267,7 @@ AIInfo *AIScanner::SelectRandomAI()
}
/* Find the Nth item from the array */
AIInfoList::iterator it = this->info_single_list.begin();
AIInfoList::const_iterator it = this->info_single_list.begin();
while (!it->second->UseAsRandomAI()) it++;
for (; pos > 0; pos--) {
it++;
@@ -275,7 +276,7 @@ AIInfo *AIScanner::SelectRandomAI()
return (*it).second;
}
AIInfo *AIScanner::FindInfo(const char *nameParam, int versionParam)
AIInfo *AIScanner::FindInfo(const char *nameParam, int versionParam, bool force_exact_match)
{
if (this->info_list.size() == 0) return NULL;
if (nameParam == NULL) return NULL;
@@ -300,21 +301,19 @@ AIInfo *AIScanner::FindInfo(const char *nameParam, int versionParam)
/* Fall-through, like we were calling this function with a version */
}
/* Try to find a direct 'name.version' match */
char ai_name_tmp[1024];
snprintf(ai_name_tmp, sizeof(ai_name_tmp), "%s.%d", ai_name, versionParam);
strtolower(ai_name_tmp);
if (this->info_list.find(ai_name_tmp) != this->info_list.end()) return this->info_list[ai_name_tmp];
if (force_exact_match) {
/* Try to find a direct 'name.version' match */
char ai_name_tmp[1024];
snprintf(ai_name_tmp, sizeof(ai_name_tmp), "%s.%d", ai_name, versionParam);
strtolower(ai_name_tmp);
if (this->info_list.find(ai_name_tmp) != this->info_list.end()) return this->info_list[ai_name_tmp];
}
/* See if there is a compatible AI which goes by that name, with the highest
* version which allows loading the requested version */
AIInfoList::iterator it = this->info_list.begin();
for (; it != this->info_list.end(); it++) {
char ai_name_compare[1024];
snprintf(ai_name_compare, sizeof(ai_name_compare), "%s", (*it).second->GetName());
strtolower(ai_name_compare);
if (strcasecmp(ai_name, ai_name_compare) == 0 && (*it).second->CanLoadFromVersion(versionParam) && (version == -1 || (*it).second->GetVersion() > version)) {
if (strcasecmp(ai_name, (*it).second->GetName()) == 0 && (*it).second->CanLoadFromVersion(versionParam) && (version == -1 || (*it).second->GetVersion() > version)) {
version = (*it).second->GetVersion();
info = (*it).second;
}
@@ -323,10 +322,10 @@ AIInfo *AIScanner::FindInfo(const char *nameParam, int versionParam)
return info;
}
char *AIScanner::GetAIConsoleList(char *p, const char *last)
char *AIScanner::GetAIConsoleList(char *p, const char *last) const
{
p += seprintf(p, last, "List of AIs:\n");
AIInfoList::iterator it = this->info_list.begin();
AIInfoList::const_iterator it = this->info_list.begin();
for (; it != this->info_list.end(); it++) {
AIInfo *i = (*it).second;
p += seprintf(p, last, "%10s (v%d): %s\n", i->GetName(), i->GetVersion(), i->GetDescription());

View File

@@ -12,8 +12,10 @@
#ifndef AI_SCANNER_HPP
#define AI_SCANNER_HPP
#include <squirrel.h>
#include "../script/script_scanner.hpp"
#include "../core/string_compare_type.hpp"
#include "ai.hpp"
#include <map>
class AIScanner : public ScriptScanner {
@@ -41,17 +43,17 @@ public:
/**
* Select a Random AI.
*/
class AIInfo *SelectRandomAI();
class AIInfo *SelectRandomAI() const;
/**
* Find an AI by name.
*/
class AIInfo *FindInfo(const char *name, int version);
class AIInfo *FindInfo(const char *name, int version, bool force_exact_match);
/**
* Get the list of available AIs for the console.
*/
char *GetAIConsoleList(char *p, const char *last);
char *GetAIConsoleList(char *p, const char *last) const;
/**
* Get the list of all registered AIs.

View File

@@ -19,14 +19,16 @@
#include "../signs_func.h"
#include "../tunnelbridge.h"
#include "../vehicle_func.h"
#include "../road_type.h"
#include "../group.h"
#include "table/strings.h"
#include <vector>
/**
* The callback function for Mode-classes.
*/
typedef bool (AIModeProc)(TileIndex tile, uint32 p1, uint32 p2, uint procc, CommandCost costs);
typedef bool (AIModeProc)();
/**
* The storage for each AI. It keeps track of important information.

View File

@@ -9,7 +9,6 @@
/** @file ai_abstractlist.cpp Implementation of AIAbstractList. */
#include <squirrel.h>
#include "ai_abstractlist.hpp"
#include "../../debug.h"
#include "../../script/squirrel.hpp"
@@ -438,8 +437,8 @@ int32 AIAbstractList::Begin()
int32 AIAbstractList::Next()
{
if (this->initialized == false) {
DEBUG(ai, 0, "ERROR: Next() is invalid as Begin() is never called");
return false;
DEBUG(ai, 0, "Next() is invalid as Begin() is never called");
return 0;
}
return this->sorter->Next();
}
@@ -452,7 +451,7 @@ bool AIAbstractList::IsEmpty()
bool AIAbstractList::HasNext()
{
if (this->initialized == false) {
DEBUG(ai, 0, "ERROR: HasNext() is invalid as Begin() is never called");
DEBUG(ai, 0, "HasNext() is invalid as Begin() is never called");
return false;
}
return this->sorter->HasNext();
@@ -518,6 +517,7 @@ void AIAbstractList::Sort(SorterType sorter, bool ascending)
}
this->sorter_type = sorter;
this->sort_ascending = ascending;
this->initialized = false;
}
void AIAbstractList::AddList(AIAbstractList *list)
@@ -535,12 +535,7 @@ void AIAbstractList::RemoveAboveValue(int32 value)
for (AIAbstractListMap::iterator next_iter, iter = this->items.begin(); iter != this->items.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).second > value) this->items.erase(iter);
}
for (AIAbstractListBucket::iterator next_iter, iter = this->buckets.begin(); iter != this->buckets.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).first > value) this->buckets.erase(iter);
if ((*iter).second > value) this->RemoveItem((*iter).first);
}
}
@@ -550,12 +545,7 @@ void AIAbstractList::RemoveBelowValue(int32 value)
for (AIAbstractListMap::iterator next_iter, iter = this->items.begin(); iter != this->items.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).second < value) this->items.erase(iter);
}
for (AIAbstractListBucket::iterator next_iter, iter = this->buckets.begin(); iter != this->buckets.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).first < value) this->buckets.erase(iter);
if ((*iter).second < value) this->RemoveItem((*iter).first);
}
}
@@ -565,12 +555,7 @@ void AIAbstractList::RemoveBetweenValue(int32 start, int32 end)
for (AIAbstractListMap::iterator next_iter, iter = this->items.begin(); iter != this->items.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).second > start && (*iter).second < end) this->items.erase(iter);
}
for (AIAbstractListBucket::iterator next_iter, iter = this->buckets.begin(); iter != this->buckets.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).first > start && (*iter).first < end) this->buckets.erase(iter);
if ((*iter).second > start && (*iter).second < end) this->RemoveItem((*iter).first);
}
}
@@ -580,12 +565,7 @@ void AIAbstractList::RemoveValue(int32 value)
for (AIAbstractListMap::iterator next_iter, iter = this->items.begin(); iter != this->items.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).second == value) this->items.erase(iter);
}
for (AIAbstractListBucket::iterator next_iter, iter = this->buckets.begin(); iter != this->buckets.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).first == value) this->buckets.erase(iter);
if ((*iter).second == value) this->RemoveItem((*iter).first);
}
}
@@ -678,12 +658,7 @@ void AIAbstractList::KeepAboveValue(int32 value)
for (AIAbstractListMap::iterator next_iter, iter = this->items.begin(); iter != this->items.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).second <= value) this->items.erase(iter);
}
for (AIAbstractListBucket::iterator next_iter, iter = this->buckets.begin(); iter != this->buckets.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).first <= value) this->buckets.erase(iter);
if ((*iter).second <= value) this->RemoveItem((*iter).first);
}
}
@@ -693,12 +668,7 @@ void AIAbstractList::KeepBelowValue(int32 value)
for (AIAbstractListMap::iterator next_iter, iter = this->items.begin(); iter != this->items.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).second >= value) this->items.erase(iter);
}
for (AIAbstractListBucket::iterator next_iter, iter = this->buckets.begin(); iter != this->buckets.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).first >= value) this->buckets.erase(iter);
if ((*iter).second >= value) this->RemoveItem((*iter).first);
}
}
@@ -708,12 +678,7 @@ void AIAbstractList::KeepBetweenValue(int32 start, int32 end)
for (AIAbstractListMap::iterator next_iter, iter = this->items.begin(); iter != this->items.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).second <= start || (*iter).second >= end) this->items.erase(iter);
}
for (AIAbstractListBucket::iterator next_iter, iter = this->buckets.begin(); iter != this->buckets.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).first <= start || (*iter).first >= end) this->buckets.erase(iter);
if ((*iter).second <= start || (*iter).second >= end) this->RemoveItem((*iter).first);
}
}
@@ -723,12 +688,7 @@ void AIAbstractList::KeepValue(int32 value)
for (AIAbstractListMap::iterator next_iter, iter = this->items.begin(); iter != this->items.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).second != value) this->items.erase(iter);
}
for (AIAbstractListBucket::iterator next_iter, iter = this->buckets.begin(); iter != this->buckets.end(); iter = next_iter) {
next_iter = iter; next_iter++;
if ((*iter).first != value) this->buckets.erase(iter);
if ((*iter).second != value) this->RemoveItem((*iter).first);
}
}
@@ -824,13 +784,10 @@ SQInteger AIAbstractList::Valuate(HSQUIRRELVM vm)
/* Push the function to call */
sq_push(vm, 2);
/* Walk all items, and query the result */
this->buckets.clear();
/* Check for changing of items. */
int begin_modification_count = this->modifications;
for (AIAbstractListMap::iterator iter = this->items.begin(); iter != this->items.end(); iter++) {
/* Check for changing of items. */
int previous_modification_count = this->modifications;
/* Push the root table as instance object, this is what squirrel does for meta-functions. */
sq_pushroottable(vm);
/* Push all arguments for the valuator function. */
@@ -868,7 +825,7 @@ SQInteger AIAbstractList::Valuate(HSQUIRRELVM vm)
}
/* Was something changed? */
if (begin_modification_count != this->modifications) {
if (previous_modification_count != this->modifications) {
/* See below for explanation. The extra pop is the return value. */
sq_pop(vm, nparam + 4);
@@ -876,8 +833,7 @@ SQInteger AIAbstractList::Valuate(HSQUIRRELVM vm)
return sq_throwerror(vm, _SC("modifying valuated list outside of valuator function"));
}
(*iter).second = (int32)value;
this->buckets[(int32)value].insert((*iter).first);
this->SetValue((*iter).first, value);
/* Pop the return value. */
sq_poptop(vm);

View File

@@ -63,6 +63,7 @@ protected:
/**
* Remove a single item from the list.
* @param item the item to remove. If not existing, it is ignored.
* @note Always use this function for removing items. It keeps the iterator valid!
*/
void RemoveItem(int32 item);

View File

@@ -17,7 +17,7 @@
/* static */ bool AIAirport::IsValidAirportType(AirportType type)
{
return IsAirportInformationAvailable(type) && ::GetAirport(type)->IsAvailable();
return IsAirportInformationAvailable(type) && ::AirportSpec::Get(type)->IsAvailable();
}
/* static */ bool AIAirport::IsAirportInformationAvailable(AirportType type)
@@ -29,8 +29,8 @@
{
if (!IsValidAirportType(type)) return -1;
const AirportFTAClass *afc = ::GetAirport(type);
return _price[PR_BUILD_STATION_AIRPORT] * afc->size_x * afc->size_y;
const AirportSpec *as = ::AirportSpec::Get(type);
return _price[PR_BUILD_STATION_AIRPORT] * as->size_x * as->size_y;
}
/* static */ bool AIAirport::IsHangarTile(TileIndex tile)
@@ -51,21 +51,21 @@
{
if (!IsAirportInformationAvailable(type)) return -1;
return ::GetAirport(type)->size_x;
return ::AirportSpec::Get(type)->size_x;
}
/* static */ int32 AIAirport::GetAirportHeight(AirportType type)
{
if (!IsAirportInformationAvailable(type)) return -1;
return ::GetAirport(type)->size_y;
return ::AirportSpec::Get(type)->size_y;
}
/* static */ int32 AIAirport::GetAirportCoverageRadius(AirportType type)
{
if (!IsAirportInformationAvailable(type)) return -1;
return _settings_game.station.modified_catchment ? ::GetAirport(type)->catchment : (uint)CA_UNMODIFIED;
return _settings_game.station.modified_catchment ? ::AirportSpec::Get(type)->catchment : (uint)CA_UNMODIFIED;
}
/* static */ bool AIAirport::BuildAirport(TileIndex tile, AirportType type, StationID station_id)
@@ -96,7 +96,7 @@
if (st->owner != _current_company) return -1;
if ((st->facilities & FACIL_AIRPORT) == 0) return -1;
return st->Airport()->nof_depots;
return st->GetAirportSpec()->nof_depots;
}
/* static */ TileIndex AIAirport::GetHangarOfAirport(TileIndex tile)
@@ -109,7 +109,7 @@
if (st->owner != _current_company) return INVALID_TILE;
if ((st->facilities & FACIL_AIRPORT) == 0) return INVALID_TILE;
return ::ToTileIndexDiff(st->Airport()->airport_depots[0]) + st->airport_tile;
return st->GetHangarTile(0);
}
/* static */ AIAirport::AirportType AIAirport::GetAirportType(TileIndex tile)
@@ -126,16 +126,16 @@
/* static */ int AIAirport::GetNoiseLevelIncrease(TileIndex tile, AirportType type)
{
extern Town *AirportGetNearestTown(const AirportFTAClass *afc, TileIndex airport_tile);
extern uint8 GetAirportNoiseLevelForTown(const AirportFTAClass *afc, TileIndex town_tile, TileIndex tile);
extern Town *AirportGetNearestTown(const AirportSpec *as, TileIndex airport_tile);
extern uint8 GetAirportNoiseLevelForTown(const AirportSpec *as, TileIndex town_tile, TileIndex tile);
if (!::IsValidTile(tile)) return -1;
if (!IsValidAirportType(type)) return -1;
if (_settings_game.economy.station_noise_level) {
const AirportFTAClass *afc = ::GetAirport(type);
const Town *t = AirportGetNearestTown(afc, tile);
return GetAirportNoiseLevelForTown(afc, t->xy, tile);
const AirportSpec *as = ::AirportSpec::Get(type);
const Town *t = AirportGetNearestTown(as, tile);
return GetAirportNoiseLevelForTown(as, t->xy, tile);
}
return 1;
@@ -143,10 +143,10 @@
/* static */ TownID AIAirport::GetNearestTown(TileIndex tile, AirportType type)
{
extern Town *AirportGetNearestTown(const AirportFTAClass *afc, TileIndex airport_tile);
extern Town *AirportGetNearestTown(const AirportSpec *as, TileIndex airport_tile);
if (!::IsValidTile(tile)) return INVALID_TOWN;
if (!IsAirportInformationAvailable(type)) return INVALID_TOWN;
return AirportGetNearestTown(GetAirport(type), tile)->index;
return AirportGetNearestTown(AirportSpec::Get(type), tile)->index;
}

View File

@@ -14,23 +14,33 @@
* functions may still be available if you return an older API version
* in GetAPIVersion() in info.nut.
*
* \b 1.0.0
* \b 1.0.1
*
* 1.0.0 is not yet released. The following changes are not set in stone yet.
* API additions:
* \li AIRail::GetMaxSpeed
*
* \b 1.0.0
*
* API additions:
* \li AIBaseStation
* \li AIEngine::IsBuildable
* \li AIEventCompanyAskMerger
* \li AIIndustry::GetLastMonthTransportedPercentage
* \li AIInfo::AICONFIG_INGAME
* \li AIMarine::GetBuildCost
* \li AIOrder::AIOF_GOTO_NEAREST_DEPOT
* \li AIOrder::GetStopLocation
* \li AIOrder::SetStopLocation
* \li AIRail::RemoveRailStationTileRectangle
* \li AIRail::RemoveRailWaypointTileRectangle
* \li AIRail::GetBuildCost
* \li AIRoad::GetBuildCost
* \li AISubsidy::SubsidyParticipantType
* \li AISubsidy::GetSourceType
* \li AISubsidy::GetSourceIndex
* \li AISubsidy::GetDestinationType
* \li AISubsidy::GetDestinationIndex
* \li AITile::GetBuildCost
* \li AITown::GetLastMonthTransportedPercentage
* \li AIVehicleList_Depot
* \li AIWaypoint::WaypointType
@@ -97,6 +107,12 @@
* the search bounding box and the industry's bounding box intersect, are
* counted. Previously these industries (and their cargos), although they
* produced cargo for a station at the given location, were not returned.
* \li AIRail::BuildRail will now fail completely if there is an obstacle
* between the begin and end, instead of building up to the obstacle and
* returning that everything went okay.
* \li Orders for buoys are now waypoint orders, i.e. instead of using the
* station orders for buoys one has to use waypoint orders.
* \li Autoreplaces can now also be set for the default group via AIGroup.
*
* \b 0.7.5
*

View File

@@ -13,9 +13,7 @@
#include "../../string_func.h"
#include "../../company_base.h"
#include "../../rev.h"
#include "table/strings.h"
#include "../ai.hpp"
#include "ai_controller.hpp"
#include "../ai_storage.hpp"
#include "../ai_instance.hpp"

View File

@@ -29,9 +29,9 @@ AIDepotList::AIDepotList(AITile::TransportType transport_type)
const Station *st;
FOR_ALL_STATIONS(st) {
if (st->owner == ::_current_company) {
const AirportFTAClass *afc = st->Airport();
for (uint i = 0; i < afc->nof_depots; i++) {
this->AddItem(st->airport_tile + ToTileIndexDiff(afc->airport_depots[i]));
const AirportSpec *as = st->GetAirportSpec();
for (uint i = 0; i < as->nof_depots; i++) {
this->AddItem(st->GetHangarTile(i));
}
}
}

View File

@@ -14,7 +14,6 @@
#include "../../company_func.h"
#include "../../company_base.h"
#include "../../strings_func.h"
#include "../../settings_type.h"
#include "../../rail.h"
#include "../../engine_base.h"
#include "../../articulated_vehicles.h"

View File

@@ -10,12 +10,11 @@
/** @file ai_execmode.cpp Implementation of AIExecMode. */
#include "ai_execmode.hpp"
#include "../../command_type.h"
#include "../../company_base.h"
#include "../../company_func.h"
#include "../ai_instance.hpp"
bool AIExecMode::ModeProc(TileIndex tile, uint32 p1, uint32 p2, uint procc, CommandCost costs)
bool AIExecMode::ModeProc()
{
/* In execution mode we only return 'true', telling the DoCommand it
* should continue with the real execution of the command. */

Some files were not shown because too many files have changed in this diff Show More