Commit Graph

212 Commits

Author SHA1 Message Date
michi_cc 016a68815d (svn r27912) -Fix (r13948): [NPF] Reserved track bits were not accounted for when trying to find any safe position. 2017-09-03 13:06:29 +00:00
adf88 1dd6930507 (svn r27906) -Cleanup: Remove some NPF code with no effect and mark possible bug about never used NPF_FLAG_IGNORE_RESERVED flag 2017-08-31 06:51:01 +00:00
frosch 062c736437 (svn r27896) -Fix: some warnings 2017-08-20 21:04:21 +00:00
frosch b4b98e5165 (svn r27893) -Codechange: Use fallthrough attribute. (LordAro) 2017-08-13 18:38:42 +00:00
frosch 35d8c37102 (svn r27885) -Cleanup (r27844): ESR_MAX_COST_EXCEEDED and ESR_PATH_TOO_LONG meant the same thing, but only one was used. Keep PATH_TOO_LONG since it has the better documentation. 2017-06-22 16:57:06 +00:00
peter1138 bf4499c643 (svn r27846) -Fix [FS#5926]: Infinite loop in pathfinder when checking safe waiting position from a waypoint. 2017-04-04 00:00:43 +00:00
peter1138 1eef97674c (svn r27845) -Change: (Yapf) Use FindDepotData struct to simplify depot finding code and remove need to return fake path distance. (juanjo) 2017-04-03 22:02:28 +00:00
peter1138 9bc27c9a72 (svn r27844) -Change: (Yapf) Treat max cost exceeded separately from path too long condition, as destination should not be considered in the former case. 2017-04-03 21:53:51 +00:00
peter1138 39fa3c7cbd (svn r27843) -Change: (Yapf) Consider depot as destination before reversing path and applying penalty. 2017-04-03 21:37:01 +00:00
frosch a23f707f92 (svn r27733) -Codechange: Pass NPF user data as void* instead of as array of integers. 2017-01-15 13:59:46 +00:00
frosch d90686f021 (svn r27586) -Fix [FS#6410]: Automatic servicing of road vehicles compared path finder costs with tile distances, thus vehicles went to depots which were factor 100 too far away. (juanjo) 2016-05-29 14:14:52 +00:00
frosch 22e6a2590d (svn r27418) -Fix [FS#6329] [FS#6379]: Desync due to incorrect storage of segments with different railtype in the YAPF cache. (JGR) 2015-10-30 16:18:03 +00:00
alberth 1105b4d2c9 (svn r27363) -Codechange: Fix codestyle of one-line methods and header codestyle of derived structs. 2015-08-08 13:19:38 +00:00
alberth b885d79f50 (svn r27362) -Codechange: Codestyle fixes for reference var declarations, static cast type, operator methods. 2015-08-08 10:06:24 +00:00
frosch 59a94f8ccf (svn r27332) -Change: Enable YAPF cache debugging with desync debug level 2. 2015-07-12 17:06:02 +00:00
rubidium 193f653c56 (svn r27107) -Fix [FS#6183]: road vehicles could not reverse to be sent to depots when the following tile has the right type to run on, but could not be entered; e.g. facing toward a depot with the entry facing the wrong way failed to reverse whereas facing towards an empty tile allowed the vehicle to reverse (estys) 2015-01-02 12:11:20 +00:00
rubidium 0463dbdc9e (svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values 2014-04-23 20:13:33 +00:00
rubidium f669101560 (svn r26117) -Cleanup: unneeded NULL check 2013-11-26 10:00:15 +00:00
rubidium 00264cc708 (svn r26109) -Fix: missing initialisation 2013-11-25 14:34:09 +00:00
rubidium e106e54f9f (svn r26102) -Fix: m_veh is not NULL by definition when IsRoadTT is true 2013-11-25 11:11:56 +00:00
rubidium 0e9c992104 (svn r26058) -Fix: handle the return value of a number of functions better 2013-11-23 13:15:07 +00:00
rubidium f178899609 (svn r25609) -Fix [FS#5216]: under certain circumstances a track type change would make the end-of-line-is-red setting ineffective 2013-07-14 09:21:46 +00:00
rubidium 740643f2b2 (svn r25608) -Codechange: make EndSegmentReasonBits available in yapf_base.hpp 2013-07-14 09:20:34 +00:00
rubidium eb538da228 (svn r24964) -Fix [FS#5416]: With YAPF the docking behaviour differed per direction; now favour docking in the direction you approached 2013-02-03 14:16:45 +00:00
peter1138 c00a400cc7 (svn r24905) -Feature(ish): Implement station randomisation triggers. 2013-01-11 07:39:25 +00:00
planetmaker c24374f99c (svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow) 2013-01-08 22:46:42 +00:00
frosch 9d877e888a (svn r24588) -Codechange: No need to intermingle reservation-checks with railroad checks. (Juanjo) 2012-10-13 08:24:28 +00:00
frosch 962a7c3630 (svn r24587) -Codechange: Improve coding style (Juanjo) 2012-10-13 08:20:40 +00:00
frosch d17ec934f5 (svn r24481) -Feature [FS#5127]: Make the pathfinder decide whether ships shall leave depots towards north or south. 2012-08-18 11:37:47 +00:00
frosch 9215192d34 (svn r24479) -Fix: Trains were unable to reverse in stations when using NPF. 2012-08-18 11:37:03 +00:00
rubidium 6d6be50ae0 (svn r23740) -Codechange: remove some 300 unneeded includes from the .cpp files 2012-01-03 21:32:51 +00:00
truebrain 1c9bec1999 (svn r23640) -Fix: stop using FORCEINLINE (1/3rd of the instances were, the others were still regular inline), but make sure inline is always a 'forced' inline (I am looking at you MSVC) 2011-12-20 17:57:56 +00:00
michi_cc 24b7be856b (svn r23564) -Fix [FS#4888]: Extending a path reservation starting at a partially reserved rail station could fail. 2011-12-17 02:02:28 +00:00
truebrain 160bfd8851 (svn r23376) -Remove: on popular demand, remove my (revoked) name from comments in the code. It was silly to name me like that to begin with ;) (based on patch by HackaLittleBit) 2011-11-30 01:22:18 +00:00
rubidium 2ed0f93bfb (svn r23093) -Codechange: add a default NULL for the Z of GetTileSlope and use it 2011-11-04 10:22:27 +00:00
rubidium 7757a2ed40 (svn r23091) -Codechange: rename some Get*Z functions to Get*PixelZ functions if they return the Z in pixels (like TilePixelHeight) 2011-11-04 10:18:13 +00:00
frosch 5ccd091fd1 (svn r22881) -Fix (r22875): GCC warnings on 64bit systems. 2011-09-03 12:45:45 +00:00
michi_cc f227e90c24 (svn r22875) -Codechange: Add some asserts and checks to better prevent overflow of the argument to malloc. (monoid) 2011-09-02 20:54:51 +00:00
michi_cc 45b95ed629 (svn r22801) -Feature: [YAPF] Take canal/ocean speed fraction of ships into account. 2011-08-21 14:13:22 +00:00
rubidium 4d5dbf5170 (svn r22410) -Document: some more bits ;) 2011-05-02 16:14:23 +00:00
smatz 0c55cbfa73 (svn r22350) -Change: make YAPF hash tables much smaller, it should improve performance significantly (about 15%) 2011-04-19 18:12:47 +00:00
smatz 6e011e9e68 (svn r22348) -Codechange: split ship-specific part of yapf_node.hpp to yapf_node_ship.hpp 2011-04-19 15:00:11 +00:00
alberth 31386c42a7 (svn r22145) -Codechange: Do explicit test for non-bool values. 2011-02-25 22:04:38 +00:00
alberth 1dbc0a20be (svn r22144) -Codechange: Unify 'while (true)' to 'for (;;)' 2011-02-25 21:53:43 +00:00
rubidium faf5d899f7 (svn r22017) -Codechange: move MarkTileDirtyByTile to viewport_func.h 2011-02-07 22:29:47 +00:00
rubidium fd94ed3009 (svn r21996) -Fix [FS#4472]: [YAPF] Under some circumstances vehicles could be lost 2011-02-06 15:01:52 +00:00
rubidium 7645c5ac43 (svn r21815) -Fix [FS#3908]: [YAPF] Apply a pathfinder penalty for back of one-way path signals so those aren't preferred over other possibilities 2011-01-15 22:40:54 +00:00
terkhen 679cd3c21b (svn r21803) -Cleanup: Remove unnecessary semicolons. 2011-01-15 15:36:58 +00:00
rubidium b68d37f2aa (svn r21706) -Fix-ish [FS#4370]: the old ship pathfinder is too stupid to provide "lost" notices; it would even get lost while following it's own path 2011-01-03 20:25:11 +00:00
smatz aa4f269f3e (svn r21652) -Cleanup: one semicolon is enough 2010-12-28 14:22:51 +00:00
rubidium ade19e5242 (svn r21651) -Fix [FS#4338] (r21229): infinite loop in the road pathfinder due to bouncing around in an "one way" trap; two one ways pointing towards eachother making it impossible to leave 2010-12-27 22:32:47 +00:00
rubidium b323000253 (svn r21631) -Fix [FS#4325]: ships with the old pathfinder would easily show up as lost, even when it would eventually find a path. Now also the distance from the "end" of the pathfinding run to the destination is compared to the current distance to the destination; if the distance to the destination at the end of the pathfinder run is less than the current distance from the destination the ship won't be marked as lost. This means that the ships with the old pathfinder will less likely get marked as lost, but due to the design of the old ship pathfinder there "lostness" is merely a best guess. When you still get a lost message 2010-12-25 12:20:18 +00:00
alberth 67cd2cd6be (svn r21594) -Codechange: Whitespace fixes in ifndef/define lines. 2010-12-22 11:24:38 +00:00
rubidium 29fc9b1d48 (svn r21533) -Codechange: replace some magic numbers with less magic constants 2010-12-16 23:24:30 +00:00
michi_cc e744b97ec8 (svn r21524) -Fix [FS#4302]: Do not apply the last signal red pathfinder penalty when the signal is a path signal. 2010-12-15 14:33:24 +00:00
terkhen 48b7916458 (svn r21521) -Codechange: Unify some cached values that were present in both road vehicles and trains. 2010-12-14 21:33:53 +00:00
terkhen 79e2b3153d (svn r21516) -Codechange: Add IsGroundVehicle function to the Vehicle class. 2010-12-14 21:26:03 +00:00
rubidium 4045429df6 (svn r21511) -Feature: vehicle lost message for ships 2010-12-13 21:56:40 +00:00
rubidium 6bc002ad74 (svn r21510) -Feature [FS#1956]: vehicle lost message for road vehicles 2010-12-13 21:56:25 +00:00
rubidium b05d2675fc (svn r21509) -Codechange: rename the rail pathfinders "path_not_found" parameter to "path_found" and remove the ! where the variables are set / read 2010-12-13 21:55:59 +00:00
yexo 22d0ce0366 (svn r21372) -Cleanup: remove some broken npf debug code 2010-12-02 23:05:48 +00:00
alberth ab50f74d7f (svn r21273) -Codechange: Return values should start at the same line. 2010-11-20 15:44:24 +00:00
rubidium 3ca5951478 (svn r21271) -Change: use the last red instead of last red exit penalty for making sure other waypoint entries are evaluated as well when they are occupied, e.g. when there are no signals before the waypoint but a train just beyond the waypoint is stopped (like for stations) 2010-11-20 14:34:57 +00:00
rubidium 6878a0ffd7 (svn r21229) -Fix [FS#4130]: [YAPF] Road vehicles not finding the nearest depot in some (corner) cases 2010-11-17 23:07:53 +00:00
terkhen e08aa7e8e6 (svn r21121) -Fix (r21100): Use the cached max speed when calculating YAPF penalties for road vehicles. 2010-11-09 17:36:40 +00:00
michi_cc b26b8b5b2a (svn r21107) -Fix: Don't use the maximum track speed where the maximum vehicle speed is meant. 2010-11-07 13:35:12 +00:00
alberth 7e48d85104 (svn r21060) -Doc: Improved wording of comments (mostly by __ln__) 2010-10-30 17:51:07 +00:00
smatz 10ee071cab (svn r20948) -Fix (r20880): compiler warning 2010-10-16 17:37:48 +00:00
alberth 7c312f602c (svn r20890) -Doc: Make documentation accessible to doxygen. 2010-10-02 19:55:13 +00:00
alberth 6a9b205670 (svn r20889) -Codechange: Make ClosedListHash, OpenListQueue, and OpenListHash data protected, and rename for coding style. 2010-10-02 19:53:20 +00:00
alberth 0c08955f4d (svn r20888) -Codechange: Make Hash_FindNode a method. 2010-10-02 19:48:45 +00:00
alberth 6802527e02 (svn r20887) -Codechange: Make stat_Hash a method. 2010-10-02 19:47:21 +00:00
alberth 4af4d268d8 (svn r20886) -Codechange: Make init_Hash a method. 2010-10-02 19:46:24 +00:00
alberth 6f85b46eeb (svn r20885) -Codechange: Make delete_Hash a method. 2010-10-02 19:44:54 +00:00
alberth d86f781ca5 (svn r20884) -Codechange: Make clear_Hash a method. 2010-10-02 19:43:29 +00:00
alberth f185a35269 (svn r20883) -Codechange: Make Hash_Delete a method. 2010-10-02 19:42:42 +00:00
alberth 15b784471e (svn r20882) -Codechange: Make Hash_Set a method. 2010-10-02 19:41:25 +00:00
alberth 4ed94825b2 (svn r20881) -Codechange: Make Hash_Get a method. 2010-10-02 19:39:34 +00:00
alberth 6ea5643e40 (svn r20880) -Codechange: Make Hash_Size a method. 2010-10-02 19:38:22 +00:00
alberth a7ffc9a268 (svn r20879) -Codechange: Make AyStarMain_ClosedList_IsInList a method. 2010-10-02 19:34:32 +00:00
alberth 4f8af5d336 (svn r20878) -Codechange: Make AyStarMain_ClosedList_Add a method. 2010-10-02 19:33:23 +00:00
alberth fa661e4075 (svn r20877) -Codechange: Make AyStarMain_OpenList_IsInList a method. 2010-10-02 19:32:21 +00:00
alberth 5e636d6a5c (svn r20876) -Codechange: Make AyStarMain_OpenList_Pop a method. 2010-10-02 19:31:24 +00:00
alberth 969139b343 (svn r20875) -Codechange: Make AyStarMain_OpenList_Add a method. 2010-10-02 19:30:24 +00:00
alberth 9b21dfaeb0 (svn r20874) -Codechange: Make init_AyStar a method. 2010-10-02 19:29:00 +00:00
alberth 7bb7d6c35a (svn r20868) -Codechange: Make AyStarMain_Main() a method. 2010-10-02 10:00:05 +00:00
alberth 49ba3539b5 (svn r20867) -Codechange: Make AyStarMain_AddStartNode() a method. 2010-10-02 09:58:32 +00:00
alberth 92f0bdec2c (svn r20866) -Codechange: CheckTile() always returns the same (ignored) value. 2010-10-02 09:55:58 +00:00
alberth 776d541a89 (svn r20865) -Codechange: Make AyStarMain_CheckTile() a method. 2010-10-02 09:53:44 +00:00
alberth 8e5aaca653 (svn r20864) -Codechange: Make AyStar_Clear() a method. 2010-10-02 09:49:32 +00:00
alberth 2a796187ef (svn r20863) -Codechange: Make AyStarMain_Loop a method. 2010-10-02 09:48:01 +00:00
alberth 581d1070b4 (svn r20862) -Codechange: Make AyStar_Free() a method. 2010-10-02 09:46:40 +00:00
smatz 77fe95f552 (svn r20860) -Cleanup: remove some unused functions and variables 2010-10-01 16:42:28 +00:00
alberth 219ad6e003 (svn r20688) -Codechange: Rename Queue struct to BinaryHeap. 2010-08-29 13:47:15 +00:00
alberth ed72338513 (svn r20687) -Codechange: Replace the THISBIN_HEAP_ARR macro by a GetElement() method. 2010-08-29 13:46:34 +00:00
alberth bc6a5a5e64 (svn r20686) -Codechange: Make init_BinaryHeap() a method. 2010-08-29 13:42:38 +00:00
alberth 2c962548e5 (svn r20685) -Codechange: Make BinaryHeap_Clear() a method. 2010-08-29 13:38:43 +00:00
alberth b06cedc905 (svn r20684) -Codechange: Make BinaryHeap_Free() a method. 2010-08-29 13:38:27 +00:00
alberth 3f0cd8c9f0 (svn r20683) -Codechange: Make BinaryHeap_Delete() a method. 2010-08-29 13:38:06 +00:00
alberth 10b182482e (svn r20682) -Codechange: Make BinaryHeap_Pop() a method. 2010-08-29 13:36:50 +00:00