4.0.2 made land unit mobility costs differ significantly from normal
move costs, but failed to make A* use these costs. This broke land unit path finding. Fix: (MOB_ROAD, MOB_MOVE, MOB_MARCH): Split MOB_ROAD into MOB_MOVE and MOB_MARCH. Users changed. (lnd_mobcost, sector_mcost): Move minimum mobcost logic to sector_mcost(), where it is visible to A*. Also fixes unit reaction path cost. (lnd_path): Fix confusing message: don't claim there's no path when all we really know is that there's no railway.
This commit is contained in:
parent
6ab05ae8a1
commit
5ad86bc7ce
11 changed files with 46 additions and 59 deletions
|
@ -471,7 +471,7 @@ retreat_land1(struct lndstr *lp, char code, int orig)
|
|||
putland(lp->lnd_uid, lp);
|
||||
return 0;
|
||||
}
|
||||
mobcost = lnd_mobcost(lp, §, MOB_ROAD);
|
||||
mobcost = lnd_mobcost(lp, §, MOB_MARCH);
|
||||
lp->lnd_x = newx;
|
||||
lp->lnd_y = newy;
|
||||
lp->lnd_mobil -= mobcost;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue