move_ground: Fix getsect() error checking

move_ground() has code to handle getsect() failure.  It's dead,
because it assumes getsect() returns a negative value on failure.  It
actually returns zero then.  The mistake can be traced back all the
way back to BSD Empire 1.1.  Fix it.

Signed-off-by: Markus Armbruster <armbru@pond.sub.org>
This commit is contained in:
Markus Armbruster 2021-01-19 19:25:03 +01:00
parent 539c44a13a
commit bfac52eb6d

View file

@ -111,7 +111,7 @@ move_ground(struct sctstr *start, struct sctstr *end,
curx = start->sct_x;
cury = start->sct_y;
total_mcost = 0.0;
if (getsect(curx, cury, &sect) < 0) {
if (!getsect(curx, cury, &sect)) {
logerror("move_path: getsect %d,%d", curx, cury);
return -1;
}
@ -191,7 +191,7 @@ move_ground(struct sctstr *start, struct sctstr *end,
*/
tmpx = curx + diroff[dir][0];
tmpy = cury + diroff[dir][1];
if (getsect(tmpx, tmpy, &next) < 0) {
if (!getsect(tmpx, tmpy, &next)) {
pr("You can't go there...\n");
*movstr = 0;
continue;