Commit Graph

174 Commits

Author SHA1 Message Date
Darkvater
9b9add65c3 (svn r7523) -Feature: Add the possibility to change the newgrf configuration 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 10:29:16 +00:00
Darkvater
39eff474d3 (svn r7521) -Codechange: Rename UpdateAllWaypointCustomGraphics to AfterLoadWaypoints to be more conforming with other such functions. 2006-12-21 00:13:56 +00:00
glx
64bf2432bb (svn r7506) -Codechange: [NewGRF] Add action 7/9/D variable 0x81 (current year) 2006-12-18 15:34:12 +00:00
Darkvater
75c053453d (svn r7470) -Codechange: Leave elrails enabled after loading old (pre-optional) and very old (pre-elrails) games. Let the user manually disable if if undesired. 2006-12-10 15:21:48 +00:00
peter1138
df1684b0d9 (svn r7469) -Fix (r7348): NewGRF settings weren't loaded in cases. 2006-12-10 12:12:26 +00:00
Darkvater
f87c8834e2 (svn r7449) -Codechange: Rename _path to _paths as it is technically more correct, but mainly because
it interferes with OS/2 symbol in libc (psmedley)
2006-12-09 10:56:12 +00:00
peter1138
bd66cc5756 (svn r7348) -Feature: Initial support for saving NewGRF settings with savegames. Back up your savegames... 2006-12-04 08:30:04 +00:00
Darkvater
9b4d3ff4b8 (svn r7312) -Fix: When loading a game from a dedicated server the local 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-30 22:23:11 +00:00
Darkvater
7c945bf828 (svn r7280) -Codechange: Replace some sprintf() functions with the safer snprintf() functions 2006-11-28 20:55:16 +00:00
peter1138
9253387001 (svn r7273) -Fix (r7250): Initialise game palette before driver initialisation. This fixes a 'black screen' problem with fullscreen with the win32 video driver. 2006-11-28 14:32:24 +00:00
peter1138
c079c83eb6 (svn r7250) -Codechange: Shuffle sprite loading and character width caching around a bit. This reduces the number of times the sprites are loaded from 5 to 2, just for the intro game. 2006-11-24 18:39:22 +00:00
KUDr
f2cda44d2e (svn r7195) -Feature: [FS#297, optional elrails] New patches/vehicles option 'disable electrified railways'.
(original patch by maedhros, ideas: peter1138, Darkvater, Rubidium, Patrick, Eddi|zuHause, ..)
2006-11-17 19:31:44 +00:00
peter1138
1a4f1c8177 (svn r7182) -Feature: Merge utf8 branch. This brings us support for Unicode/UTF-8 and the option for fonts rendered by FreeType. Language changes to come. 2006-11-16 22:05:33 +00:00
tron
2a53bcf2b0 (svn r7065) Use simple assignment instead of memcpy() 2006-11-05 08:24:52 +00:00
Darkvater
ac2b6f39b1 (svn r7048) -Cleanup: DEBUG doesn't need a newline character, use DEBUG instead of printf and the
verb is build/built/built not build/*/build or build/*/builded.
2006-11-03 01:18:40 +00:00
tron
e397b721cd (svn r6986) Use the pool macros for the Town pool 2006-10-28 11:55:29 +00:00
tron
f51d2a3311 (svn r6983) Use the pool macros for the Station pool 2006-10-28 11:48:21 +00:00
tron
470a054c06 (svn r6982) Use the pool macros for the Sign pool 2006-10-28 11:43:56 +00:00
tron
c61e0963e0 (svn r6980) Use the pool macros for the Order pool 2006-10-28 11:37:26 +00:00
tron
4cb479e083 (svn r6979) Use the pool macros for the Industry pool 2006-10-28 11:32:45 +00:00
tron
953344fdcc (svn r6975) Use the pool macros for the Vehicle pool 2006-10-28 10:55:59 +00:00
Darkvater
ee27bb497c (svn r6884) -Codechange: Add strict bounds checking in string formatting system.
The last parameter should point to the end of the buffer (eg lastof(buf))
 Courtesy of Tron.
2006-10-21 23:31:34 +00:00
Darkvater
e97d801d92 (svn r6816) -Codechange: Some coding style, variable localization, const correctness.
-Codechange: 'quited' is not a word, use has_quit instead for NetworkClientState
2006-10-17 23:34:12 +00:00
Darkvater
fbc724c6cb (svn r6814) -Codechange: For network games ci->client_playas was always 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-17 22:16:46 +00:00
Darkvater
d5baf25923 (svn r6787) -Codechange: Use PLAYER_NEW_COMPANY as a player identifier wishing to become a
new player instead of a 0.
2006-10-15 23:48:34 +00:00
Darkvater
b2110cbaed (svn r6780) -Codechange: Remove GPMI leftovers (-b impersonisation of AI in MP). 2006-10-15 17:01:19 +00:00
Darkvater
6b6d908308 (svn r6776) -Codechange: Use IsValidPlayer() function to determine of a PlayerID is an
actual playable player (< MAX_PLAYERS) or not.
2006-10-14 22:31:18 +00:00
Darkvater
dad5d5dd72 (svn r6774) -Codechange: Rename the badly named OWNER_SPECTATOR to PLAYER_SPECTATOR and
put it into player.h where it belongs (instead of map.h)
2006-10-14 15:49:43 +00:00
Darkvater
1436bbbc84 (svn r6766) -Codechange: Move _openttd_revision[] into the functions that use it instead of global 2006-10-13 15:52:22 +00:00
Darkvater
cad526ef36 (svn r6754) -Codechange: Remove some #idef ENABLE_NETWORK specific defines. With networking
disabled hardcode _networking/_network_available to zero and let the compiler
 handle all optimizations.
2006-10-12 14:59:27 +00:00
Darkvater
15bf48acfd (svn r6753) -Codechange: Move some function declerations from functions.h into network.h
and let NetworkDisconnect handle all shutdown related operations.
2006-10-12 14:48:36 +00:00
bjarni
ea63050d5f (svn r6624) -Feature: added ability to add refit commands to vehicle orders (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-10-03 14:52:39 +00:00
peter1138
f469d3fe76 (svn r6544) - Codechange: Rename CmdReplaceVehicle to CmdSetAutoReplace, to reflect what it does. 2006-09-28 07:02:55 +00:00
peter1138
88d5472fe8 (svn r6455) - Feature: Add 2cc (two company colours) livery schemes. This 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-15 12:27:00 +00:00
bjarni
00a08601c9 (svn r6424) -Codechange: [autoreplace] removed a loop though all vehicles 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-08 10:47:39 +00:00
rubidium
63687763e9 (svn r6381) -Cleanup: make the '/* */' comments that span multiple lines more uniform.
-Cleanup: whitespace alignment of a few tables.
2006-09-04 20:40:33 +00:00
rubidium
a7cfb80c40 (svn r6380) -Codechange: unify all ways to quit OTTD.
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-04 17:30:30 +00:00
rubidium
38ace9deef (svn r6366) -Fix (FS#324): when opening a scenario, the date was set 1920 years into the future. 2006-09-03 22:21:12 +00:00
rubidium
03f963af58 (svn r6365) -Cleanup: remove IsGeneratingWorld calls that are either not called or have no effect. 2006-09-03 22:07:28 +00:00
tron
cdf3972733 (svn r6287) -Codechange: Remove a redundant check 2006-08-31 20:51:33 +00:00
truelight
be737b80d3 (svn r6136) -Fix: _cur_year wasn't converting when reading pre-31 savegames, causing nasty desyncs
-Fix: _date, which is a Date, which is int32, was saved as uint32
2006-08-26 11:06:54 +00:00
truelight
b34d77ca3f (svn r6050) -Codechange: mass-renamed SignStruct -> Sign and ss -> si. Now functions and variables all match eachother 2006-08-22 16:38:50 +00:00
truelight
0461d89612 (svn r6047) -Codechange: FOR_ALL now _only_ loops valid items, and skips 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 15:33:35 +00:00
rubidium
480af9c917 (svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct. 2006-08-22 14:38:37 +00:00
truelight
305d6eeaef (svn r6037) -Fix: never allow scrolling the map in the main menu (scroll-settings weren't reset if switched to mainmenu) 2006-08-21 14:59:23 +00:00
truelight
9e755051a1 (svn r6001) -Feature: when removing a farm, his farmland is removed too (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 18:44:26 +00:00
rubidium
28a0843707 (svn r5999) -Feature: change the original date format to a 32 bits format 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 18:40:57 +00:00
truelight
a06d5548eb (svn r5977) -Fix [FS#78]: never set I-am-a-thread bool to true IN the 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-20 13:39:33 +00:00
truelight
10b842bddc (svn r5946) -Add: merged the TGP branch to mainline. TGP adds:
- 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-19 10:00:30 +00:00
rubidium
3cab5f30c0 (svn r5926) -Codechange: make _cur_year contain the full year, instead of 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
2006-08-16 11:39:55 +00:00