Commit Graph

1650 Commits

Author SHA1 Message Date
darkvater
b6dbc9196a (svn r1753) - Fix: [ 1113037 ] crash when accessing hi-scores in editor, it is now disabled. 2005-01-31 11:36:16 +00:00
darkvater
870f28a76e (svn r1752) - Fix: MSVC acting up once again, as well as project file updates for the missing files. 2005-01-31 11:33:21 +00:00
matthijs
eb78cdb2d4 (svn r1751) - Feature: New PathFinder (NPF).
- Supports trains, road vehicles and ships.
	- Uses A* pathfinding (same codebase as the new ai).
	- Currently unlimited search depth, so might perform badly on large maps/networks (especially ships).
	- Will always find a route if there is one.
	- Allows custom penalties for obstacles to be set in openttd.cfg (npf_ values).
	- With NPF enabled, ships can have orders that are very far apart. Be careful, this will break (ships get lost) when the old pathfinder is used again.
- Feature: Disabling 90 degree turns for trains and ships.
	- Requires NPF to be enabled.
	- Ships and trains can no longer make weird 90 degree turns on tile borders.
- Codechange: Removed table/directions.h.
	- table/directions.h contained ugly static tables but was included more than once. The tables, along with a few new ones are in npf.[ch] now. Better suggestions for a location?
- Fix: Binary heap in queue.c did not allocate enough space, resulting in a segfault.
- Codechange: Rewritten FindFirstBit2x64, added KillFirstBit2x64.
- Codechange: Introduced constant INVALID_TILE, to replace the usage of 0 as an invalid tile. Also replaces TILE_WRAPPED.
- Codechange: Moved TileAddWrap() to map.[ch] 
- Add TileIndexDiffCByDir(), TileIndexDiffCByDir(). 
- Codechange: Moved IsTrainStationTile() to station.h
- Add: IsRoadStationTile() and GetRoadStationDir().
2005-01-31 11:23:10 +00:00
darkvater
0e272f2d10 (svn r1750) - Feature: [ 1093261 ] Saving vehicle sorting criteria for each vehicle type (bociusz) 2005-01-31 11:03:23 +00:00
tron
bb680056b1 (svn r1749) Move the functions which calculate distances to map.[ch] and give the more meaningful names 2005-01-31 07:23:15 +00:00
tron
77072aedab (svn r1748) Enforce map size limits 2005-01-31 06:46:53 +00:00
darkvater
493ae95ce5 (svn r1747) - Fix: [network] ottd should compile when networking is disabled.
- Change: change strgen project file to get rid of warning.
2005-01-31 00:12:44 +00:00
darkvater
26ef673f66 (svn r1746) - Feature: [GUI] [ 1107690 ] Resizable orders GUI (nzhook) 2005-01-30 23:41:57 +00:00
tron
4609d64df7 (svn r1745) Use -fno-inline when DEBUGing 2005-01-30 23:04:41 +00:00
tron
98da9d3712 (svn r1744) DEBUG and PROFILE can be used at the same time. 2005-01-30 23:03:31 +00:00
celestar
337de948c1 (svn r1743) -Fix: Multistop: Added some debug output and made sure that orphaned slots are cleared. 2005-01-30 22:04:14 +00:00
bjarni
f4bcb2e268 (svn r1742) - Fix: fixed bug introduced in r1730 where AI players had problems when building aircrafts 2005-01-30 21:06:09 +00:00
bjarni
7d967ad12a (svn r1741) - Fix: added IsVehicleIndex() so it's possible to protect GetVehicle() from reading an invalid vehicle index
- Fix: added check for v->type in some commands, which expects v to be a specific type

Checks like this is needed to protect network servers from people, who hack their clients to either cheat or crash the server

NOTE: if I made a mistake here it can make a function unreachable when it should be used. Here is one place to look if something weird happens
2005-01-30 20:50:06 +00:00
celestar
fb3af3321a (svn r1740) -Fix: [ 1112342 ] Realistic acceleration works properly with TTDPatch non-stop handling behaviour 2005-01-30 19:51:39 +00:00
darkvater
bc0198a4c3 (svn r1739) - Fix: type checking when selling vehicles (TrueLight) 2005-01-30 18:51:08 +00:00
celestar
39c55d0eb3 (svn r1738) -Fix: [ 1108735 ] Fixed (hopefully) an assertion that was cause by selling carriages in a MP game faster than the network can handle. (Truelight) 2005-01-30 18:40:52 +00:00
tron
b188b30e2d (svn r1737) Add DEBUG category "map" and use it to print the map size when allocating the map 2005-01-30 18:12:37 +00:00
celestar
4bdbf4e75e (svn r1736) -Fix: Forgot to remove some unused variables in last commit :( 2005-01-30 17:53:44 +00:00
celestar
9a3089b403 (svn r1735) -Fix: [ 1112285 ] Fixed an assertion error with stations where stops
were deleted, the assertions were just plain wrong at that place. Used a
more graceful handling. Todo: What happens if ALL stations in a schedule
have no suitable stop?
2005-01-30 17:46:57 +00:00
darkvater
b33e5d9ee0 (svn r1734) - Fix: [ 1112253 ] hijacking of arrow keys, game also scrolled when it was out of focus (dominik) 2005-01-30 16:54:39 +00:00
darkvater
121f563daf (svn r1733) - Fix: oops "| 1" is SETBIT(x, 0), not 1 :(. Now you can remove signals again 2005-01-30 16:08:19 +00:00
darkvater
c8ca8130bd (svn r1732) - Change: [OS/2] [ 1112148 ] Project file update (orudge) 2005-01-30 16:00:37 +00:00
darkvater
d3e3965f0b (svn r1731) - Fix: [ 1106930 ] BugFix: placing signals with 2x1 drags workaround is completely rewritten. Also features checks for hacked/modified clients. Thanks a lot Hackykid! 2005-01-30 15:57:38 +00:00
bjarni
0cfb483677 (svn r1730) - Fix: Ships and Aircrafts have to be build in depots owned by _current_player (hacked client protection)
now all 4 types of vehicles have to be build in depots. Note: there is a wordaround for AI players since the AI handle aircraft building in a weird way
2005-01-30 14:52:04 +00:00
darkvater
0a7546b6ab (svn r1729) - Fix: [ 1112469 ] Clearing land for free by reallocating HQ 2005-01-30 14:32:52 +00:00
bjarni
ef78d67a0a (svn r1728) - Fix: now a player can only build a road vehicle in depots he owns (hacked client protection) 2005-01-30 13:42:11 +00:00
bjarni
3103119b6c (svn r1727) - Fix: now CmdBuildRailVehicle() behaves correctly if DC_EXEC is set
this commit alters ai.c a little to get rid of the workaround from r1725 so AI players could still build locomotives
2005-01-30 13:03:32 +00:00
tron
9f86f1bf9d (svn r1726) Move an assert() because it could not catch all cases of incorrect input where it was placed 2005-01-30 08:25:39 +00:00
bjarni
001cdf0ba2 (svn r1725) - Fix: now trains can only be built in depots and you have to own the depot too (hacked client protection) 2005-01-29 23:58:07 +00:00
tron
dae4b50e1c (svn r1724) Set maximum number of industries and towns to 250 each 2005-01-29 20:18:01 +00:00
tron
b9a4756e1e (svn r1723) Save the map size in tiles, not number of bits 2005-01-29 20:11:19 +00:00
tron
001aa8e453 (svn r1722) -Feature: Bigger maps - anyone? 2005-01-29 19:45:14 +00:00
celestar
3c82a2b3c7 (svn r1721) -Feature: It is now possible to build multiple road stations (up to 8) on
a single station.
Thanks to: Truelight for the saveload code, Darkvater and Hackykid for
network testing and Tron for proof-reading 1500 lines of diff.
2005-01-29 19:41:44 +00:00
darkvater
b8fb0141a3 (svn r1720) - Fix: signed/unsigned warnings. Tile which is incremented/decremented every time until suitable ground is found is compared to the direction it is going in. If this wraps, return error. For this treat the tile itself as a TileIndexDiff 2005-01-29 18:22:07 +00:00
darkvater
d2f28208cc (svn r1719) - Fix: [installer] fix some installer problems mainly for DOS files as well as beautify it a little
- Fix: corrected newlinetype of tile.c
2005-01-29 16:47:19 +00:00
tron
38587b60f7 (svn r1718) Use the enum TileType as parameter/return type for [GS]etTileType() instead of plain int.
This makes it necessary to rename TileType() to GetTileType() because a type and a function may not share the same name.
2005-01-29 15:12:40 +00:00
darkvater
e5b3e6bbda (svn r1717) -Fix: some compilation problems for braindead VS6 and added missing files to project (thx bociusz) 2005-01-29 14:56:25 +00:00
tron
5a6ec81e7f (svn r1716) Prevent zeppelins from accessing non-existent tiles when leaving the map 2005-01-29 14:53:05 +00:00
tron
e86e9f96ca (svn r1715) Move [GS]etMapExtraBits to tile.[ch] 2005-01-29 13:33:48 +00:00
tron
3515b670d2 (svn r1714) Add missing include 2005-01-29 13:33:14 +00:00
tron
39858e696b (svn r1713) Split off several functions which query/set information about a single tile from map.h and put them into a seperate file tile.h 2005-01-29 12:19:05 +00:00
bjarni
f853483424 (svn r1712) - Fix: a hacked client can no longer send other players trains to a depot
- Feature: [autoreplace] trains now tries to find a depot if they needs to be replaced

Now all 4 types of vehicles goes to a depot if they needs to be replaced
2005-01-29 12:01:36 +00:00
bjarni
74694e8c4c (svn r1711) - Add: [MacOSX] Added an Xcode project file (Tobin)
This project file adds a graphical IDE to OSX, including graphical debugging, which is a bit easier than gdb (Xcode uses gdb for debugging)
       Since it uses the makefile to compile, it should (hopefully) work without updating the project file when the makefile is updated
       Tobin did most of the work, but I altered paths and settings for custom executable so it should work out of the box for everybody
2005-01-29 10:10:10 +00:00
bjarni
6252d595e2 (svn r1710) - Fix: [autoreplace] vehicles do no longer go to a depot all the time if the owner clicked 'stop replacing' ( ship+aircraft+road vehicles ) 2005-01-29 01:02:47 +00:00
bjarni
60c07f7a9e (svn r1709) - Feature: [autoreplace] ships now automatically goes to a depot if they need to be replaced 2005-01-28 20:43:46 +00:00
bjarni
f33013a37b (svn r1708) - Fix: FindNearestHangar() will no longer return a hangar where a jet will crash if it is a jet, that is searching
- Codechange: Since planes move in strait lines in 8 directions, GetTileDistAdv() is used instead of manhatten distance in FindNearestHangar()
2005-01-28 18:10:12 +00:00
bjarni
6d52ee4962 (svn r1707) - Feature: [autoreplace] road vehicles now tries to find a depot if they needs to be replaced 2005-01-28 17:31:42 +00:00
tron
400f07fdb8 (svn r1706) Implement ScaleByMapSize() and ScaleByMapSize1D()
These scale a number relative to the map size/circumference.
Use them to scale the amount of map objects.
Of course at the moment they return just the input, because there are no bigger/smaller maps yet.
2005-01-28 15:31:04 +00:00
dominik
6d410929b6 (svn r1705) Sign owner variable is a byte, not int32 of course 2005-01-28 12:21:04 +00:00
dominik
936979c957 (svn r1704) - Fix: [newgrf] rotors of custom helicopters are displayed correctly in the hangar window 2005-01-28 12:20:06 +00:00