summaryrefslogtreecommitdiff
path: root/order_cmd.c
AgeCommit message (Collapse)Author
2005-05-02(svn r2255) - Fix: [ 9680363 ] [NPF] Broken buoy handling for shipsmatthijs
Buoys will now try to get within 3 tiles of a buoy instead of a the actual buoy tile. This gets ships to got past buoys in a realistic (IMO) way instead of barging right through them. - Fix: [NPF] Trains get curves penalties sometimes even when the track is straight. - Add: [NPF] Ships get a penalty for going over buoys now, so they will try to go around. - Add: [NPF] Ships get a penalty for curves too, yay for straight lines. - Add: TrackdirToTrack(), TrackToTrackdir(), IsDiagonalTrack() and IsDiagonalTrackdir() helper functions. - Add: IsBuoy() and IsBuoyTile() helper functions. - Codechange: Rearranged part of the control flow of ShipController(), removing a goto.
2005-04-30(svn r2237) - Fix (regression): [ 1192284 ] Bug: Ship refuses to add buoy to ↵Darkvater
its orders (init100)
2005-04-22(svn r2222) Check the parameters of Cmd{Insert,Delete,Modify,Skip}Order() ↵tron
and CmdRestoreOrderIndex(): - Check if the vehicle exists - Check if the vehicle belongs to the correct player - Check if the new order is valid (type, destination, flags) (CmdInsertOrder)
2005-04-11(svn r2184) - CodeChange: remove the copy of ClearSlot(), which is now also ↵Darkvater
called for CmdSkipOrder(). This also fixes the involuntary crash introduced 2 revisions ago
2005-04-10(svn r2178) Postprevcommitaddendum: add debug.h if you use DEBUG()Darkvater
2005-04-10(svn r2177) - Fix: Fix a slot desync with setting the invalid slot to the ↵Darkvater
correct value
2005-02-06(svn r1818) -Add: Dynamic orders (up to 64k orders)truelight
2005-02-05(svn r1801) -Fix [Multistop] Fixed a crash that occured when copying orders ↵celestar
due to not checking a pointer to be non-NULL
2005-02-02(svn r1770) -Fix: Hopefully last pieces of code that are containing a station-idtruelight
(and should be an uint16, not uint8)
2005-01-31(svn r1751) - Feature: New PathFinder (NPF).matthijs
- 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(svn r1749) Move the functions which calculate distances to map.[ch] and ↵tron
give the more meaningful names
2005-01-29(svn r1721) -Feature: It is now possible to build multiple road stations (up ↵celestar
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-23(svn r1612) -Fix: made sure that ->next pointers are set to NULLtruelight
2005-01-23(svn r1607) -Fix: When deleting an order, the next pointer was not cleared, truelight
resulting in some unusual behavoir from time to time
2005-01-22(svn r1594) Convert all undefined parameter lists to (void) and add the ↵tron
appropriate warning flags in the Makefile
2005-01-18(svn r1556) -Fix: Vehicle list updates should now really workCelestar
2005-01-17(svn r1554) -Fix: [ 1103187 ] Order Check messages are now validated beforecelestar
displayed, so that there are no stray error messages any more. -Feature/Fix: Order Checking is only execute for ONE vehicle in an order-share system
2005-01-16(svn r1544) -Fix: SwapOrder did not use AssignOrder, which caused the ↵truelight
saveroutine to crash from time to time -Codechange: added const before 'Order *' where possible
2005-01-15(svn r1525) -Codechange: rewrote the _order_array, now it can be made dynamic.truelight
-Codechange: renamed all 'schedule' stuff to 'order(list)' -Codechange: moved all order-stuff to order_cmd.c / order.h -Codechange: vehicles that share orders are now linked to eachother with next_shared/prev_shared in Vehicle Developers: please use AssignOrder to assign data to an order. If not, you _WILL_ make the save-routine to assert!
2005-01-15(svn r1521) -Fix: Ship Vehicle Lists are now redrawn correctlycelestar
-Codechange: added some const to last commit -Codechange: Ship and Aircraft lists are now update on order change, not on new day
2005-01-06(svn r1407) -Codechange: changed a lot around _stations, _vehicles, _towns ↵truelight
and _industries (in prepare of dynamic arrays): - DEREF_XXX is changed into GetXXX - All direct call are directed via GetXXX - struct Industry has now an index-field - ENUM'd some stuff - Replaced home built loops with FOR_ALL_XXX - Added _stations_size, _vehicles_size, ... which gives the length of the array (which will be dynamic in the near future) - Changed lengtof(XXX) to _XXX_size (e.g. _stations_size) - Removed all endof(XXX) (because mostly it was part of a FOR_ALL_XXX) - Made the sort-functions of all 4 dynamic - Made all 4 Initialize functions more of the same - Some minor tab-fixing and stuff (tnx to Tron for proof-reading my 100kb patch ;)) Note for all: please do NOT directly call _stations, _vehicles, _towns and _industries, but use the right wrapper to access them. Thank you. Ps: please also do not use 'v++', where v is of type Vehicle *.
2004-12-29(svn r1297) Language fixes in the source.. (ln-)miham
2004-12-29(svn r1295) -Fix: [ 1092499 ] Copy order was fucked up, because memcpy said: truelight
sizeof(uint16), instead of sizeof(Order).
2004-12-19(svn r1177) Enable non-stop flag for waypointstron
2004-12-19(svn r1175) -Fix: [ 1086375 ] Backup-order-list was not closed with an ↵truelight
OT_NOTHING, resulting in order-lists mixing together (maybe tnx to Darkvater, not sure though..)
2004-12-19(svn r1164) Redid fix from revision 1163 to work with all patch settingsdominik
2004-12-18(svn r1163) Fix: [ 1087403 ] Crashed trains aren't reported to have too few ↵dominik
orders any more
2004-12-10(svn r1009) -Feature: per-station vehicle liststron
This adds a little button per vehicle class to the station window which opens a list of all vehicles that have this station on their schedule. As side effect this gets rid of some global variables.
2004-12-05(svn r955) Replace uint16 for orders with struct Ordertron
This adds no functionality, but is a stepping stone for future improvement (like 16bit order indices) and is easier to read. This changes preserves binary compatibility wrt savegames.
2004-12-04(svn r942) -Merged branch/network back into the trunktruelight
2004-12-02(svn r901) Small step in the process to clean up the DPARAM mess:tron
- reduce to 2 sizes (*DParam64 for 64bit values, *DParam for the rest) - use inline functions instead of macros - add assert()s to check for buffer overruns
2004-11-25(svn r815) Include strings.h only in the files which need it.tron
This should reduce the compile time after altering english.txt by about 1/3, because "only" 62 instead of 90 .c files must be recompiled.
2004-11-06(svn r516) Solved a little bug with the order checker.celestar
2004-09-19(svn r300) Fix: order checker now correctly detects station with invalid ↵dominik
facilities
2004-09-10(svn r194) -Codechange: stripping trailing-spaces. Please keep this that way!truelight
2004-08-15(svn r56) Improved order checker + patch setting for it (celestar)dominik
2004-08-12(svn r30) -Fix [1007272] Copy orders between bus/truck possible. You cannot ↵darkvater
share orders between busses/trucks. You can only copy orders if all the facilities in schedule allow both types to go there (Celestar) -Fix Dutch in dropdown language box is not in BIGFONT
2004-08-11(svn r20) Feature: warning when a vehicle has invalid orders (celestar)dominik
2004-08-09(svn r1) Import of revision 975 of old (crashed) SVNtruelight