summaryrefslogtreecommitdiff
path: root/openttd.c
AgeCommit message (Collapse)Author
2006-12-21(svn r7523) -Feature: Add the possibility to change the newgrf configuration ↵Darkvater
of a running game. This is only possible in SP (or in the intro menu). During game play you will get a confirmation window when applying the changes as some actions can crash OpenTTD and/or make your current game unplayable.
2006-12-21(svn r7521) -Codechange: Rename UpdateAllWaypointCustomGraphics to ↵Darkvater
AfterLoadWaypoints to be more conforming with other such functions.
2006-12-18(svn r7506) -Codechange: [NewGRF] Add action 7/9/D variable 0x81 (current year)glx
2006-12-10(svn r7470) -Codechange: Leave elrails enabled after loading old ↵Darkvater
(pre-optional) and very old (pre-elrails) games. Let the user manually disable if if undesired.
2006-12-10(svn r7469) -Fix (r7348): NewGRF settings weren't loaded in cases.peter1138
2006-12-09(svn r7449) -Codechange: Rename _path to _paths as it is technically more ↵Darkvater
correct, but mainly because it interferes with OS/2 symbol in libc (psmedley)
2006-12-04(svn r7348) -Feature: Initial support for saving NewGRF settings with ↵peter1138
savegames. Back up your savegames...
2006-11-30(svn r7312) -Fix: When loading a game from a dedicated server the local ↵Darkvater
player global variable was wrongly set to 0. In theory this allowed a dedicated server to also play. I see no history for this bug, but it has been there since the introduction of the dedicated server probably. Thanks peter1138 for bringing it to my attention and thanks myself for rewriting the code so this bug could surface ;p
2006-11-28(svn r7280) -Codechange: Replace some sprintf() functions with the safer ↵Darkvater
snprintf() functions
2006-11-28(svn r7273) -Fix (r7250): Initialise game palette before driver ↵peter1138
initialisation. This fixes a 'black screen' problem with fullscreen with the win32 video driver.
2006-11-24(svn r7250) -Codechange: Shuffle sprite loading and character width caching ↵peter1138
around a bit. This reduces the number of times the sprites are loaded from 5 to 2, just for the intro game.
2006-11-17(svn r7195) -Feature: [FS#297, optional elrails] New patches/vehicles option ↵KUDr
'disable electrified railways'. (original patch by maedhros, ideas: peter1138, Darkvater, Rubidium, Patrick, Eddi|zuHause, ..)
2006-11-16(svn r7182) -Feature: Merge utf8 branch. This brings us support for ↵peter1138
Unicode/UTF-8 and the option for fonts rendered by FreeType. Language changes to come.
2006-11-05(svn r7065) Use simple assignment instead of memcpy()tron
2006-11-03(svn r7048) -Cleanup: DEBUG doesn't need a newline character, use DEBUG ↵Darkvater
instead of printf and the verb is build/built/built not build/*/build or build/*/builded.
2006-10-28(svn r6986) Use the pool macros for the Town pooltron
2006-10-28(svn r6983) Use the pool macros for the Station pooltron
2006-10-28(svn r6982) Use the pool macros for the Sign pooltron
2006-10-28(svn r6980) Use the pool macros for the Order pooltron
2006-10-28(svn r6979) Use the pool macros for the Industry pooltron
2006-10-28(svn r6975) Use the pool macros for the Vehicle pooltron
2006-10-21(svn r6884) -Codechange: Add strict bounds checking in string formatting system.Darkvater
The last parameter should point to the end of the buffer (eg lastof(buf)) Courtesy of Tron.
2006-10-17(svn r6816) -Codechange: Some coding style, variable localization, const ↵Darkvater
correctness. -Codechange: 'quited' is not a word, use has_quit instead for NetworkClientState
2006-10-17(svn r6814) -Codechange: For network games ci->client_playas was always ↵Darkvater
p->index + 1. To correctly handle this ci->client_playas - 1 was used all over the code making it pretty confusing at times. Use proper one-on-one values now. Special handling is only needed for user-output to not to confuse users.
2006-10-15(svn r6787) -Codechange: Use PLAYER_NEW_COMPANY as a player identifier ↵Darkvater
wishing to become a new player instead of a 0.
2006-10-15(svn r6780) -Codechange: Remove GPMI leftovers (-b impersonisation of AI in MP).Darkvater
2006-10-14(svn r6776) -Codechange: Use IsValidPlayer() function to determine of a ↵Darkvater
PlayerID is an actual playable player (< MAX_PLAYERS) or not.
2006-10-14(svn r6774) -Codechange: Rename the badly named OWNER_SPECTATOR to ↵Darkvater
PLAYER_SPECTATOR and put it into player.h where it belongs (instead of map.h)
2006-10-13(svn r6766) -Codechange: Move _openttd_revision[] into the functions that ↵Darkvater
use it instead of global
2006-10-12(svn r6754) -Codechange: Remove some #idef ENABLE_NETWORK specific defines. ↵Darkvater
With networking disabled hardcode _networking/_network_available to zero and let the compiler handle all optimizations.
2006-10-12(svn r6753) -Codechange: Move some function declerations from functions.h ↵Darkvater
into network.h and let NetworkDisconnect handle all shutdown related operations.
2006-10-03(svn r6624) -Feature: added ability to add refit commands to vehicle orders ↵bjarni
(can only be done in goto depot orders) Example: make a train transport iron ore from A to B, then it visits a depot and refits to steel It then transport steel back to A or near A if there is a factory and then it visits another depot to refit to iron ore again This is controlled in the orders. If a goto depot order is lightlighted, then "Unload" changes to "Refit" Control click "Refit" removes the refit part of the order (as the tooltip says) The player will still pay the normal refit costs Known issues: If a vehicle is not in a depot, then the refit window will fail to tell refitted cargo capacity Refit costs in the refit window can sometimes print 0 when it should not because the refit calculation is unaware that the vehicle will be refitted in between Warning: autoreplace got a protection against replacing something so you get a new cargo type, but it can fail here. In the iron ore/steel example, it can see that the vehicle carries iron ore and the new one can be refitted to iron ore, then it will replace. It will not check to see that it's valid for steel as well. This is something to look into in the future
2006-09-28(svn r6544) - Codechange: Rename CmdReplaceVehicle to CmdSetAutoReplace, to ↵peter1138
reflect what it does.
2006-09-15(svn r6455) - Feature: Add 2cc (two company colours) livery schemes. This ↵peter1138
replaces the original colour selection window and bumps the saveload version. Liveries are supported for all vehicles, not just those with 2cc support. Thanks to lakie for GUI inspiration.
2006-09-08(svn r6424) -Codechange: [autoreplace] removed a loop though all vehicles ↵bjarni
from each time the window is redrawn To do this, the player struct contains an array, that contains the count of each engine type that the player owns Those arrays are updated each time a vehicle is build or deleted and is calculated on load (it's not saved) It's possible to access the arrays outside of the autoreplace GUI, so feel free to read from them in other patches as well
2006-09-04(svn r6381) -Cleanup: make the '/* */' comments that span multiple lines ↵rubidium
more uniform. -Cleanup: whitespace alignment of a few tables.
2006-09-04(svn r6380) -Codechange: unify all ways to quit OTTD.rubidium
This means that in the intro menu the 'Quit' button immediatelly quits and the 'Quit' in the menu of the normal game and scenario editor immediatelly quits when the 'autosave_on_exit' patch is turned on. This is the same way as the OS/window manager initiated quits, like alt-F4 and the 'x' in the (OS/window manager drawn) title bar of OTTD.
2006-09-03(svn r6366) -Fix (FS#324): when opening a scenario, the date was set 1920 ↵rubidium
years into the future.
2006-09-03(svn r6365) -Cleanup: remove IsGeneratingWorld calls that are either not ↵rubidium
called or have no effect.
2006-08-31(svn r6287) -Codechange: Remove a redundant checktron
2006-08-26(svn r6136) -Fix: _cur_year wasn't converting when reading pre-31 savegames, ↵truelight
causing nasty desyncs -Fix: _date, which is a Date, which is int32, was saved as uint32
2006-08-22(svn r6050) -Codechange: mass-renamed SignStruct -> Sign and ss -> si. Now ↵truelight
functions and variables all match eachother
2006-08-22(svn r6047) -Codechange: FOR_ALL now _only_ loops valid items, and skips ↵truelight
invalid ones -Codechange: use IsValidXXX where ever possible Note: both changes to prepare for new pool system, which needs those changes. For every pool there are 2 ugly lines, which will be removed when done implementing new pool system. Based on FS#13 by blathijs, partly implemented.
2006-08-22(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. ↵rubidium
whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
2006-08-21(svn r6037) -Fix: never allow scrolling the map in the main menu ↵truelight
(scroll-settings weren't reset if switched to mainmenu)
2006-08-20(svn r6001) -Feature: when removing a farm, his farmland is removed too ↵truelight
(over time) (based on peter1138's patch, FS#82) To make this to work, in older games farmland is removed on load, and replanted
2006-08-20(svn r5999) -Feature: change the original date format to a 32 bits format ↵rubidium
based at the year 0. The game date subsystem now allows someone to start in the year 0 and continue up to the year 5 000 000. However, you currently cannot build anything before 1920 as there is no newgrf support for dates before 1920 or after 2090 yet.
2006-08-20(svn r5977) -Fix [FS#78]: never set I-am-a-thread bool to true IN the ↵truelight
thread. Machines with dualcore can be faster then you want, and therefor create 2 threads, while you made the bool to make sure there is never more then 1 thread of this type.
2006-08-19(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:truelight
- New optional landscape generator (TerraGenesis Perlin) - Load heightmaps (either BMP or PNG) - Progress dialog while generating worlds (no longer a 'hanging' screen) - New dialogs for NewGame, Create Scenario and Play Heightmap - Easier to configure your landscape - More things to configure (tree-placer, ..) - Speedup of world generation - New console command 'restart': restart the map EXACTLY as it was when you first started it (needs a game made after or with this commit) - New console command 'getseed': get the seed of your map and share it with others (of course only works with generated maps) - Many new, world generation related, things - Many internal cleanups and rewrites Many tnx to those people who helped making this: Belugas, DaleStan, glx, KUDr, RichK67, Rubidium, and TrueLight (alfabetic) Many tnx to those who helped testing: Arnau, Bjarni, and tokai (alfabetic) And to all other people who helped testing and sending comments / bugs Stats: 673 lines changed, 3534 new lines, 79 new strings
2006-08-16(svn r5926) -Codechange: make _cur_year contain the full year, instead of ↵rubidium
the offset since 1920 -Codechange: store all year related variables that are _not_ stored in a savegame/transported over the network in the same format as _cur_year