Darkvater
45e85d2eb2
(svn r3627) - Change all hardcoded 255 max-saveload versions with the define SL_MAX_VERSION
2006-02-20 19:43:26 +00:00
peter1138
4f9ea7640a
(svn r3620) - 2cc: Replace use of macro to determine colour map with a function call for drawing of vehicles.
2006-02-20 09:26:07 +00:00
Darkvater
4c8c1e8f6a
(svn r3619) - Codechange: Simplify a NullStruct initialization in the vehicle array (merge the two together to avoid confusion)
2006-02-20 01:36:48 +00:00
truelight
0068f19605
(svn r3598) -Fix: suppress invalid warning by assigning value to variable
2006-02-13 21:47:02 +00:00
peter1138
efe76c22e6
(svn r3589) - Rename u.road.unk2 to u.road.blocked_ctr
2006-02-11 10:45:20 +00:00
peter1138
f4215cf6a0
(svn r3579) v->u.rail.first_engine holds an engine type, not a vehicle index, so use INVALID_ENGINE.
2006-02-08 19:06:46 +00:00
peter1138
2265915e6c
(svn r3576) - Allow unused wagons have their ->first set. This fixes the faulty cache warning message, and noticably speeds up depot operations in large games.
2006-02-08 08:18:29 +00:00
peter1138
9dba135f79
(svn r3573) - Replace assert(0) with NOT_REACHED(). This commit sponsored by "giving Darkvater credit for the last three".
2006-02-07 19:11:51 +00:00
peter1138
59333131a5
(svn r3572) - Rewrite GetFreeUnitNumber() so that only one loop of vehicles is required. Instead a list of used/unused numbers is created and the first unused number is chosen. This significantly improves performance in large games.
2006-02-07 19:01:01 +00:00
peter1138
66fcdc5e6d
(svn r3571) - When loading a game, call TrainConsistChanged() for each train head separately before updating images, as v->first is used extensively in GetTrainImage() for custom graphics. This gives a significant speed improvement on loading a game.
2006-02-07 18:57:16 +00:00
bjarni
78b51cbec2
(svn r3535) -Feature: [autoreplace] allow autoreplacing of train wagons
...
currently ALL available wagons are displayed in the right menu in the replace window
however the replacement will only be done if the new wagon can be refitted to carry same cargo as the old one is currently carrying
Since the standard vehicles do not have any valid wagon replacements, this feature can only be used when using newgrf sets
2006-02-04 18:25:07 +00:00
tron
84fb96fe85
(svn r3511) More whitespace ([FS#46] by Rubidium)
2006-02-01 07:36:15 +00:00
tron
22dc05faf2
(svn r3510) Fiddle with whitespace and parentheses
2006-02-01 06:32:03 +00:00
tron
4e2bb34be3
(svn r3498) Fix the edge case for r3419/r3488: when a vehicle just enters a tile, the height difference can be 8
2006-01-31 19:06:02 +00:00
tron
7d03773383
(svn r3488) Simplify the check in r3419
2006-01-30 16:57:47 +00:00
Darkvater
e6d16d17dc
(svn r3482) - Fix: since multiheaded links are not saved anymore do NOT save them anymore at all, return the extra space. Since Bjarni's fix for this was abominable, the weird situation arises of 2 NULL structs of free space, of which the first isn't usable.
2006-01-29 22:40:51 +00:00
Darkvater
4e09974975
(svn r3472) - [PBS] Remove from trunk. Anyone interested can still find it in branch/pbs. This reverts revisions r3158, r3140, r3075, r2977, r2674, r2625, r2621, r2529, r2528, r2525, r2524, r2519, r2517, r2516, r2507, r2499. (in conjunction with Tron)
...
- The only change is that the nsignalsw.grf file is kept and that existing nightlies with PBS signals get those signals converted to combo-signals.
2006-01-29 18:57:26 +00:00
Darkvater
188352ea3e
(svn r3419) - Fix: [FS#40] (Possible) game crash on removing track/road under bridge. This was caused by a wrong tile-occupancy testing where it was assumed that a vehicle's height is only a multitude of 8 (a single height-difference). This is incorrect as a vehicle on a slope will assume all height levels between the lower-and upper-bounds. The crash is still possible as seen in the Flyspray bugreport but this has a different cause.
2006-01-22 17:17:11 +00:00
bjarni
e35a131153
(svn r3403) -Codechange: [multiheaded engines] the references between the front and rear engines are no longer saved
...
instead the pointers are generated on load
2006-01-18 15:05:01 +00:00
peter1138
90aff7a026
(svn r3396) - Autoreplace changes:
...
- Change fixed array per player to a single pool. This avoids future problems
with vehicle numbers and decreases savegame size. Engine replacements from
previous savegames will be lost.
- Move engine replacement code from players.c to engine.c.
(thanks to blathijs for rewriting this)
2006-01-12 15:52:18 +00:00
bjarni
4bf1741783
(svn r3390) -Fix: [autoreplace] fixed issue where autoreplace failed to attach the cars if the front engine was replaced
...
and the front engine was multiheaded and the first vehicle after it was the rear part of that engine
2006-01-08 12:20:13 +00:00
tron
af70b49bf7
(svn r3367) Unify the 4 distinct CMD_CHANGE_{AIRCRAFT,ROADVEH,SHIP,TRAIN}_SERVICE_INT commands into one CMD_CHANGE_SERVICE_INT command.
...
As side effect this is a
-Fix: The default AI tried to change the service intervals of vehicles via the CMD_CHANGE_TRAIN_SERVICE_INT command - regardless of the type of the vehicle - which of course failed for non-trains
2006-01-05 21:35:54 +00:00
tron
e272b03fee
(svn r3365) Staticise 36 functions
2006-01-05 12:40:50 +00:00
peter1138
4b464093e7
(svn r3362) Fix issue with loading old (TTD) savegames:
...
- move call to convert from old to new train subtypes.
- ensure AI is started for AI players.
2006-01-04 20:18:39 +00:00
peter1138
911a8aa08d
(svn r3361) - Clone Vehicle: Disallow cloning of crashed rail vehicles after starting removal process.
2006-01-04 16:53:00 +00:00
tron
246c126d25
(svn r3353) Simplify the automatic length adjustment algorithm for replacing trains: Use the length of the train before the replacement as reference length
2005-12-29 12:42:59 +00:00
peter1138
1ffc700797
(svn r3352) - NewGRF: Move initialization of vehicle random_bits to DC_EXEC blocks to allow use of Random() instead of InteractiveRandom(), which will alleviate some possible network desyncs.
2005-12-28 22:29:59 +00:00
tron
fa78c057ee
(svn r3339) Remove unnecessary includes
2005-12-24 20:54:31 +00:00
tron
bf98086de8
(svn r3298) Remove unused and write-only variables
2005-12-14 06:28:48 +00:00
tron
23bfc03054
(svn r3297) Staticise
2005-12-14 06:20:23 +00:00
peter1138
414481cdd8
(svn r3261) - Autoreplace: If a replaced vehicle had a custom name, transfer it to the new vehicle. Fixes "[ 1370039 ] Autoreplaced vehicles lose their names"
2005-12-05 16:48:07 +00:00
peter1138
fde99748c0
(svn r3248) - Codechange: Change interface of CanRefitTo() to supply the engine type directly instead of getting it from a vehicle. This allows the function to be used before vehicles are involved.
2005-11-29 22:29:59 +00:00
peter1138
87f54ebf92
(svn r3239) - Codechange: Introduce and use helper functions for engine replacement code.
2005-11-26 16:41:14 +00:00
truelight
4845ff063b
(svn r3227) -Codechange: [Savegame] removed 'minor' version, and renamed 'major' version to just: version.
2005-11-22 19:33:29 +00:00
bjarni
c7f3192f6b
(svn r3223) -Fix: [autoreplace] fixed crash when replacing a train engine without any cars (introduced in r3220)
2005-11-19 22:39:16 +00:00
bjarni
24eda23b80
(svn r3220) -Fix: [autoreplace] Autoreplaced trains now replace their cargo to the train instead of just the new engine
...
This applies to wagon removal during autoreplace too
2005-11-19 10:28:02 +00:00
bjarni
e472fed85a
(svn r3219) -Codechange: removed the now obsolite code in the build train command to make half multiheaded engines
2005-11-19 00:10:20 +00:00
bjarni
22a4679837
(svn r3218) -Feature: Multiheaded train engines will now stay in the same train
...
This means that any user attempt to remove a rear engine will tell the user to move the front engine instead
This fixes the assert when moving multiheaded engines (introduced in r3144)
Note: to make old savegames use this feature, some engines might be turned around in order to link engines in pairs
-Codechange: train subtype is now a bitmask
This allows fast access to info like if it is a wagon or engine and if it is in front and so on
Note: savegame version bump
2005-11-18 23:41:03 +00:00
tron
89cfe202b8
(svn r3208) Don't explicitly pass the engine type to look for to GetRearEngine(), because it's the engine type of the vehicle which gets passed as first parameter
2005-11-16 14:07:34 +00:00
tron
62b2b4613f
(svn r3193) Staticise the vehicle position hash
2005-11-16 11:50:40 +00:00
tron
f7abff5f96
(svn r3181) -Bracing
...
-Indentation
-Whitespace
-DeMorgan's Law
-Test with NULL or 0 for non-booleans
-'\0' instead of 0 for chars
-Remove redundantly redundant comments (like DoFoo(); // Do foo)
-Join multiple short lines with a single statement
-Split single lines with multiple statements
-Avoid assignments in if
2005-11-14 19:48:04 +00:00
tron
833032adc0
(svn r3177) GB, CLRBIT, HASBIT, TOGGLEBIT
2005-11-14 08:09:57 +00:00
tron
4a14a586e2
(svn r3173) Use the trinary operator and switch to improve readability
...
Also align short cases nicely
2005-11-13 14:54:09 +00:00
tron
ee15e3de13
(svn r3172) static, const
2005-11-13 13:43:55 +00:00
bjarni
5481dcd191
(svn r3155) -Feature: [autoreplace] autoreplace can now remove cars from too long trains
...
-Trains will now remember the length of stations it visits and sell cars
when being autoreplaced if they became too long
-If it needs to remove cars, then it starts from the front and sells
all it can find until the train is short enough
-This only works for trains, that knows the station length of the route
so a full uninterrupted run is needed
-a train needs 1-2 runs to detect if the shortest station is expanded
-This feature can be turned on and off in the train replace window
and each company can have it's own setting
-NOTE: minor savegame version bump
2005-11-07 23:20:47 +00:00
peter1138
bc25cd89bf
(svn r3148) -NewGRF, Feature: Add support for cargo refitting specification by cargo classes.
2005-11-06 13:42:26 +00:00
bjarni
b6d1f81635
(svn r3143) -Codechange: greatly increased speed when allocating vehicles
...
This increases the speed greatly when allocating more than one at a time
(planes, artic engines, cloning...) and when adding another block of
vehicles to the vehicle pool (adding 512 vehicles each time)
2005-11-05 19:58:16 +00:00
peter1138
267314b4d0
(svn r3139) -NewGRF, Feature: support for articulated rail vehicles. This is used, for example, by coal tenders.
2005-11-05 16:07:26 +00:00
bjarni
d86829d0e0
(svn r3138) -Fix: [clone vehicles] fixed assert when it was possible to allocate some vehicles to clone a train, but not for all cars
...
Now it gives "too many vehicles" error message instead
To make this work, AllocateVehicles() needed to be moved to vehicle.c (from aircraft_cmd.c) and made non-static
2005-11-05 14:01:00 +00:00
bjarni
7d4d13df35
(svn r3137) -Fix: [autoreplace] fixed assert that was triggerable when a vehicle entered a depot even though the goto depot was canceled
...
this assert could be reached by clicking on the goto depot button to cancel goto depot from the orders and the vehicle
still entered the depot. The flags in that case would not be "normal" anymore. An additional check is added to prevent this
2005-11-04 22:10:49 +00:00