Fix stuck travel for good
My fixes to the travel stuck oscillation did not fix all of them, and I've even seen a 3-step loop - which my fixes cannot detect. I guess there could be arbitrary-sized loops too. To definitely fix this, keep track of all the map locations travel has moved the hero through, and if it tries to go on a location already used, stop travel and give the unsure -message.
This commit is contained in:
@@ -466,8 +466,7 @@ moveloop_core(void)
|
||||
}
|
||||
if (g.context.mv) {
|
||||
if (g.multi < COLNO && !--g.multi)
|
||||
g.context.travel = g.context.travel1 = g.context.mv =
|
||||
g.context.run = 0;
|
||||
end_running(TRUE);
|
||||
domove();
|
||||
} else {
|
||||
--g.multi;
|
||||
|
||||
Reference in New Issue
Block a user